PLC Program Block Mapping for Concurrent Online Modification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing PLC systems do not allow multiple users to simultaneously access and modify programs during operation, leading to inefficiencies and potential errors due to sequential access restrictions.

Innovation Solution

A PLC program processing device that updates the program block table with size information, allowing the start address of modified programs to be determined by summing the sizes of previous blocks, enabling simultaneous access and modification by multiple users.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If sequential access control is implemented for PLC program modification, then storage location management is simplified, but multiple users cannot simultaneously access and modify programs

Engineering Contradiction:
Improvesimultaneous access capabilityVSAvoidprogram block table management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The program storage is divided into discrete blocks with unique block numbers. Each block can be independently identified and modified, allowing multiple users to work on different blocks simultaneously. The program block table segments the storage management into manageable units with individual size information.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The program block table acts as an intermediary data structure between the storage system and multiple users. It maintains size information for each block, enabling the system to calculate start addresses dynamically and coordinate simultaneous access requests without direct conflict.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If start addresses are fixed in the program block table, then storage management is straightforward, but program size changes cause storage location errors

Engineering Contradiction:
Improvestorage location accuracyVSAvoidprogram modification flexibility
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The start address of each program block is no longer fixed but dynamically calculated based on the cumulative size of previous blocks. When a program size changes, the system automatically recalculates the affected start addresses, ensuring storage location accuracy without manual intervention while maintaining modification flexibility.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter management approach from fixed start addresses to variable start addresses derived from block sizes. By storing only size information in the program block table and calculating start addresses on-demand, the system adapts to program size changes automatically, maintaining both reliability and ease of operation.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If program size information is stored for each block, then simultaneous modifications can be coordinated, but the data structure becomes more complex

Engineering Contradiction:
Improveparallel modification capabilityVSAvoiddata structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system pre-stores size information for each program block in the program block table before modifications occur. This preliminary data enables the system to quickly calculate new start addresses and coordinate simultaneous modifications without complex real-time negotiations, improving productivity while keeping the data structure relatively simple.

Inventive Principle:
Principle #10Preliminary action

4Measurement precision

If the system calculates start addresses by summing previous block sizes, then storage locations are dynamically accurate, but calculation complexity increases

Engineering Contradiction:
Improvestart address accuracyVSAvoidaddress calculation process
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The program block table itself enables the address calculation function. By storing size information in a structured format, the system allows automatic self-calculation of start addresses through simple summation operations, achieving high precision without requiring complex external calculation mechanisms.

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP3564764B1Device for processing programmable logic controller program
Publication Date: 2024.07.17 LSIS CO LTD
  • EP3564764B1 patent drawingFigure 1
  • EP3564764B1 patent drawingFigure 2
  • EP3564764B1 patent drawingFigure 3

AI summary

The present disclosure provides a device for processing a programmable logic controller (PLC) program. In one embodiment, the device includes a storage containing PLC programs stored on a block basis, and a program block table defining storage locations of the PLC programs; and a controller configured: when a PLC program is modified during a PLC is operating, to determine a start address of a storage location where the modified PLC program is to be stored with referring to a block number of the modified PLC program, size information of the modified PLC program, and the program block table; and to store the modified PLC program in the storage based on the determined start address. According to the present disclosure, multiple users may simultaneously access a PLC and then may simultaneously modify PLC programs during the PLC is operating.