Shared Variable Checking Across Multi-Language Control Programs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In robot control systems, data exchange between programs written in different languages, such as V+ and IEC61131-3, often results in implementation errors due to forgotten or incorrectly implemented shared variables, leading to functional issues.
Innovation Solution
A development support device and method that utilizes a shared variable reference to check for omissions and errors in shared variable names across multiple programming languages, providing an error message and debugging capabilities to ensure proper implementation before program execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If data exchange is performed by defining shared variables with the same name in each program, then data sharing between different programming languages is enabled, but implementation errors occur when shared variable definition is forgotten or names are erroneous
Solution Approach 1:
The system performs preliminary checking of shared variable definitions before program execution. The determination unit checks whether shared variables are properly defined and named in both programs during the development phase, detecting errors before they affect program functionality.
Solution Approach 2:
The system provides feedback about shared variable implementation status. The determination unit identifies and reports cases where shared variables are not properly defined or named incorrectly, allowing developers to correct issues before execution.
2Ease of operation
If programs in two languages are created on different screens by different persons, then language-specific programming flexibility is maintained, but shared variable implementation errors increase
Solution Approach 1:
The determination unit provides automated feedback about shared variable consistency between programs created by different developers on different screens. This feedback mechanism detects implementation errors without restricting the flexibility of separate programming environments.
Solution Approach 2:
The development support device acts as an intermediary that checks shared variable definitions between independently created programs. It mediates the interface between different programming languages and developers, ensuring consistency without interfering with individual programming flexibility.
3Productivity
If shared variables are used for data exchange between programs, then interprocess communication is achieved, but errors in shared variable definition cause program malfunction
Solution Approach 1:
The system performs preliminary verification of shared variable definitions before program execution. The determination unit checks whether shared variables are properly defined in both programs during the development phase, preventing execution errors.
Solution Approach 2:
The system provides error detection and warning mechanisms beforehand to cushion against potential execution failures. By identifying shared variable errors in advance, the system prevents program malfunctions that would otherwise occur during runtime.
Data Source
Figure 1~2
Figure 3~4
Figure 5
AI summary
To appropriately find an omission of implementation of a shared variable defined between different programs and an error of a shared variable name before a program is executed. A development support device (50) for developing a plurality of different programming languages that are executed in a control device (10) includes: a shared variable reference (TBL1) which is a pre-created shared variable reference and is referred to in source codes of the plurality of different programming languages, and used for a shared variable that shares a memory; an input unit (71) configured to input the source codes of the plurality of different programming languages; and a determination unit (73d) configured to determine whether the shared variable is referred to in the input source codes of the plurality of different programming languages based on the shared variable reference (TBL1).