PLC Symbol Table for Legacy Device Name Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In industrial automation environments, programmable logic controllers (PLCs) executing high-level language programs face communication challenges with older peripheral equipment, as these controllers recognize variable names and memory addresses instead of device names, leading to incompatibility and the need for expensive middleware solutions.

Innovation Solution

A method is introduced to generate a symbol table that maps device names to their corresponding physical addresses, allowing PLCs to execute high-level language programs and communicate effectively with peripheral equipment by compiling and linking high-level language programs with an association table, enabling direct access to devices through the symbol table stored in the PLC's memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a PLC executes high-level language programs, then programming ease and maintainability are improved, but compatibility with legacy peripheral equipment deteriorates

Engineering Contradiction:
Improveprogramming easeVSAvoidcompatibility with legacy equipment
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent introduces a symbol table as an intermediary data structure that maps device names used by legacy peripheral equipment to memory addresses used by high-level language programs. This symbol table acts as a mediator between the two different communication paradigms, allowing PLCs to execute high-level language programs while maintaining compatibility with legacy equipment through the mapping relationships stored in the symbol table.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If a PLC uses device names for communication, then compatibility with legacy equipment is maintained, but ability to execute high-level language programs deteriorates

Engineering Contradiction:
Improvecompatibility with legacy equipmentVSAvoidprogramming ease
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent segments the communication interface into two distinct layers: the device name layer for legacy equipment compatibility and the memory address layer for high-level language program execution. The symbol table creates a clear separation between these two layers, allowing each to operate independently while maintaining their relationships through the mapping structure.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If middleware is used to enable communication between high-level language PLCs and legacy equipment, then compatibility is achieved, but system complexity and cost increase

Engineering Contradiction:
Improvecompatibility with legacy equipmentVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the compatibility functionality from a separate middleware component and integrates it directly into the PLC's memory structure through the symbol table. By taking out the mapping functionality from an external middleware and embedding it within the PLC's address space, the system eliminates the need for additional software layers while maintaining compatibility with legacy equipment.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS8832670B2Programmable controller and programming tool for communication with legacy equipment
Publication Date: 2014.09.09 MITSUBISHI ELECTRIC CORP
  • US8832670B2 patent drawing
  • US8832670B2 patent drawing
  • US8832670B2 patent drawing

AI summary

A method of generating a symbol table for a programmable logic controller which executes high-level language program is provided. The method includes reading the high-level language program and an association table specifying relationship between devices controlled by the programmable logic controller and variable names in the high-level language program; compiling and linking the high-level language program and the association table for determining a physical address for each of the variable names and the corresponding devices; generating the symbol table by the compiling and linking, the symbol table defining the determined physical address for each of the devices; and storing the symbol table in the memory of the programmable logic controller. A programmable logic controller executing the high-level language program and storing the symbol table is also provided.