Generating Human Machine Interfaces:
 
How to Avoid Development Pitfalls


The generation and integration of Human Machine Interfaces (HMI) can be a challenge for Developers and Project Managers. The relatively simple concept of generating a real-time interactive interface can quickly derail development timelines and negatively impact design function and reuse. Engineering professionals need to look at software solutions that can satisfy a variety of needs while reducing deployment times. This white paper explores today’s driving changes and how development of HMI can be done in a rapid a reusable fashion.

Pitfalls of HMI Development in Simulation and Training
 

The umbrella of Simulation and Training is extremely broad and covers all aspects of learning by way of replicating real world elements in controlled environments. Obtaining content for use in simulation and training applications can be performed in one of two ways. First is to use the hardware from the real device in the training arena. This can be a costly solution but for certain applications is quite necessary and mandatory.

The second is a virtual representation of the hardware device developed in a software solution, rendered by low cost computers and driven by any number of input methods. This solution can lead to the following problems if a developer is not careful about the implementation:

  • The rendering performance of the virtual hardware device may not meet specifications demanded by the training environment.
  • Virtual hardware devices might be generated as a “one-off” solution, in a proprietary architecture, or be difficult to modify once initially developed.
  • Visual quality of the hardware devices may not meet the fidelity required for training.


Safety Critical Application Displays
 
Displays for Safety Critical applications in industries such as Aerospace, Defense, and Medical have long development times due to their inherent complexity. Typically vendors will use tools to create a new design’s look, and mimic partial functionality, merely to obtain prototype sign-off. Efforts put forth to create the prototype are then discarded as developers write the final display application by hand.
Classroom Training on Physical Equipment
 

When training personnel on how to use a piece of real world equipment it is often necessary to have that device in front of them so they can operate it during the learning process. Classrooms of equipment are set up in order to facilitate training the appropriate numbers of personnel but the following problems arise from this approach:

  • Procuring all of the equipment to facilitate training can be expensive.
  • Maintaining the equipment to keep it functional for training can be expensive.
  • Monitoring how the student is using the equipment is difficult.
  • Time away from primary job can have a negative impact on an organization’s bottom line.

Adding Interactive Content Adds Security Concerns
 
Interactive simulation based learning content can solve many problems. However, the content can introduce problems when deployed in today’s secure network environments. The delivery mechanisms to “run” the simulation content in web browsers, and other deployable learning applications, may violate corporate or government security directives.
The Next Generation of HMI Development
 

The next generation of HMI development should take the form of a Commercial-Off-the-Shelf (COTS) development tool that can alleviate previous problems with the development of virtual devices. Application developers can leverage newer technologies and architectures such as Object Oriented designs, WYSIWIG interfaces, and applications generated in C++ or Java rendering in OpenGL.

HMI code should run in the OpenGL graphics environment to ensure the virtual devices run on a computer’s GPU and not the CPU to achieve optimum rendering performance and minimum application overhead. A solution geared towards OpenGL rendering, and trivial operating system dependencies, allows generated code to be run on virtually any platform.

A WYSYIWIG interface that supports development in both 2D and 3D environments and importing common high resolution image and model formats is critical for reducing prototyping and development times and ensuring proper device fidelity.

Final considerations to a COTS tool are licensing and execution of deployed objects. Developers should have an option to deploy applications without licensing restrictions and the ability to have content run in non-proprietary rendering solutions (especially in web deployed or distance learning applications).

The GL Studio® Advantage
 

There are choices for developing HMI content and applications. Some have been around for a very long time. The GL Studio tool by DiSTI was born out the market demands for a better way to develop HMI applications.

GL Studio has no proprietary formats, flexible licensing options and is able to produce reliable, safe, efficient, reusable applications in a rapid and easy fashion. The tool has been extremely successful since its inception and has gained great market share because of the needs it addresses.

Code Generation
 
GL Studio exists to be a code generator. The editor produces highly encapsulated C++ code, Java code, or DO-178B code qualifiable to Level A for safety critical applications. All generated code is object oriented so GL Studio components can easily be encapsulated into a diverse range of applications as well as reused back into the GL Studio workflow to build larger designs.
OpenGL Library Support
 
GL Studio works with OpenGL libraries so all of the virtual components run on the GPU, freeing up the CPU for performing other mission critical tasks. Since the GL Studio solution relies primarily on the GPU, applications can be compiled and executed on a variety of Windows, Linux, IRIX, Solaris, and any Real-Time operating systems.
Ease of Use
 
The GL Studio editor is an intuitive 2D or 3D GUI development environment for creating virtual devices and interfaces. Tools include drawing, texturing and hierarchy controls along with pre-built behaviors for a variety of common objects such as push-buttons, knobs, sliders and switches. Users can also add their own complex behaviors. GL Studio can be used to replicate the look and feel of any real world device.
Deployment Options
 

A single GL Studio design can be built to deploy applications based on the C++, Java, or DO-178B Qualifiable code generators. These applications have the option to be built with no runtime licensing dependencies at all (i.e. they will never check for a license).

Applications can be stand alone executables that run in their own environment, components to plug into third party applications, or web deployed. GL Studio objects can run in an ActiveX based web player or in the Java Runtime Environment. For developers who need to run on the Naval Marine Corp Internet (NMCI) the GL Studio web player is a Certified NMCI Plug-in and the Java Runtime Environment is currently on the NMCI Gold Disk.

GL Studio is available for 30-day trial period.
Contact marketing@edstechnologies.com

 
© 2007 EDS Technologies.