HMI UI Wrapper Generation for Cross-OS Factory Automation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing solutions do not provide a technique for making external controls compatible with general-purpose OS available as UI elements for programs compatible with non-general-purpose OS in factory automation, limiting OS diversification in human-machine interface (HMI) program development.

Innovation Solution

A support device that receives UI element specifications, generates program code compatible with a second OS type, and creates a wrapper program to ensure compatibility, allowing the same HMI program to run on different OS types without requiring separate development environments for each OS.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If external controls compatible with general-purpose OS are used as UI elements, then the ease of operation and development efficiency are improved, but the adaptability to non-general-purpose OS is worsened

Engineering Contradiction:
Improveease of operationVSAvoidadaptability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent introduces a wrapper program as an intermediary layer between the external control (UI element) and the target device's OS. This wrapper translates OS-specific calls, allowing external controls developed for general-purpose OS to function on non-general-purpose OS without modifying the original control code. The wrapper acts as a mediator that handles OS compatibility issues transparently.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a universal development environment that can generate HMI programs adaptable to multiple OS types (both general-purpose and non-general-purpose). By incorporating OS detection functionality and conditional wrapper generation, the system achieves multi-functionality where a single development environment supports diverse target platforms without requiring separate development tools for each OS.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If separate development environments are created for each OS type, then the adaptability to different OS is improved, but the device complexity and development time are worsened

Engineering Contradiction:
ImproveadaptabilityVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges multiple OS-specific development capabilities into a single unified development environment. The system combines Windows-compatible external control support with Linux/UNIX compatibility by integrating OS detection logic and conditional wrapper program generation into one environment, eliminating the need for separate development tools for different OS types.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent changes the parameter of OS compatibility from a fixed state to a dynamic state. The development environment automatically detects the target device's OS type and adjusts its behavior accordingly - generating appropriate wrapper programs only when needed. This parameter change allows the system to adapt to different OS types without requiring permanent configuration for each platform.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If wrapper programs are generated for all UI elements, then the adaptability to non-general-purpose OS is improved, but the loss of time and processing overhead are worsened

Engineering Contradiction:
ImproveadaptabilityVSAvoidloss of time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent performs preliminary OS detection before generating the HMI program. By detecting the target device's OS type in advance, the system can determine whether wrapper program generation is necessary. This preliminary action prevents unnecessary wrapper generation for targets already running compatible OS types, saving time and processing resources.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies partial action by generating wrapper programs only for the specific case when the target device runs non-general-purpose OS. Instead of universally wrapping all UI elements regardless of target OS, the system selectively applies wrapping only when needed, reducing unnecessary processing overhead while maintaining adaptability where required.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11429357B2Support device and non-transient computer-readable recording medium recording support program
Publication Date: 2022.08.30 OMRON CORP
  • US11429357B2 patent drawing
  • US11429357B2 patent drawing
  • US11429357B2 patent drawing

AI summary

The objective of the present invention is to diversify the types of OS compatible with constituent elements of an HMI program. A support device receives a specification of UI elements of program code compatible with a first OS type, said UI elements constituting an HMI program executed by control devices which are targets of factory automation (FA); generates program code of UI elements compatible with a second OS type from the specified UI elements; and generates a wrapper program, which includes the program code compatible with the second OS type and an instruction code instructing to generate an execution module that includes the relevant program code, when a condition that the OS possessed by the target device is not the first OS type is satisfied. A program in executable code is generated from the HMI program having the wrapper program incorporated therein.