IP Library Granted Patent US 9,618,925
Granted Patent B2
US 9,618,925 · App. 14/259,305 · Granted Apr 11, 2017

Multi-mode editor for configuring process control blocks including both logical functions and arithmetic computations

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,618,925
App. No.
14/259,305
Granted
Apr 11, 2017
Kind
B2
Abstract

A multi-editing mode LOGIC BLOCK object editor is disclosed for creating and modifying LOGIC BLOCK objects that are incorporated into control strategies for process control systems (both distributed and discrete). The editor includes an RPN text editing mode wherein logic incorporated into a LOGIC BLOCK is represented by a list of text instructions. The editor also includes a graphical function block diagram editing mode wherein LOGIC BLOCK logic is defined via instruction shapes dragged/dropped from a pallet and connected via GUI line connection actions by a user. The editor supports automated transitioning between the text and graphics modes wherein conversion of text-to-graphics and graphics-to-text is performed without user intervention. Furthermore, synchronization procedures are performed when LOGIC BLOCK objects are opened in the editor and when transitioning between editing modes to track and/or maintain synchronous status between graphical and text representations of LOGIC BLOCK logic.

Claims (52)

1. A non-transitory computer readable medium including computer executable instructions for providing a multi-mode editor that facilitates editing a LOGIC BLOCK object for use in a process control system, the LOGIC BLOCK object comprising a control block configured to perform LOGIC BLOCK logic when executed, the computer executable instructions facilitating carrying out the steps of:

providing, by the editor, a first LOGIC BLOCK editing mode wherein the LOGIC BLOCK logic is represented by a graphical definition comprising instruction shapes and connections between the instruction shapes;

providing, by the editor, a second LOGIC BLOCK editing mode wherein the LOGIC BLOCK logic is represented by a text definition comprising lines of text instructions; and

switching, while the LOGIC BLOCK object being edited is open in the editor, between the first and second LOGIC BLOCK editing modes, the switching comprising the sub-steps of:

storing a first graphical representation and associated first text representation attributes of the LOGIC BLOCK logic;

converting the first graphical representation to second text representation attributes of the LOGIC BLOCK logic;

comparing the second text representation attributes converted from the first graphical representation with the first text representation attributes to determine whether the second text representation attributes differ from the first text representation attributes;

generating, based on a determination that the first text representation attributes differ from the second text representation attributes, a second graphical representation and associated third text representation attributes from the first text representation attributes of the LOGIC BLOCK logic;

performing a synchronization test that compares the third text representation attributes with the second text representation attributes;

receiving, based on a determination that the third text representation attributes differ from the second text representation attributes, input from a user; and

updating, based on the input from the user, the second text representation attributes with information from the third text representation attributes.

2. The non-transitory computer readable medium of claim 1 wherein the text representation comprises Reverse Polish Notation (RPN) instructions.

3. The non-transitory computer readable medium of claim 1 wherein the switching step, when performed to render the graphical representation of the LOGIC BLOCK logic, comprises executing computer-executable instructions to layout the instruction shapes according to a set of pre-defined layout rules.

4. The non-transitory computer readable medium of claim 1 , wherein the switching step includes a validation step, which verifies that text instructions edited with the LOGIC BLOCK conform to valid control logic syntax.

5. The non-transitory computer readable medium of claim 1 wherein performing the synchronization test further comprises:

performing a synchronization test that compares the first text representation attributes and the third text representation attributes.

6. The non-transitory computer readable medium of claim 5 wherein the performing a synchronization test further comprises:

updating the first text representation attributes of the first graphical representation with the third text representation attributes of the second graphical representation upon detecting a loss of synchronization during performing a synchronization test that compares the first text representation attributes and the third text representation attributes.

7. A method for providing a multi-mode editor, via a computing system including a graphical display that facilitates editing a LOGIC BLOCK object for use in a process control system, the LOGIC BLOCK object comprising a control block configured to perform LOGIC BLOCK logic when executed, the method comprising the steps of:

providing, by the editor, a first LOGIC BLOCK editing mode wherein the LOGIC BLOCK logic is represented by a graphical definition comprising instruction shapes and connections between the instruction shapes;

providing, by the editor, a second LOGIC BLOCK editing mode wherein the LOGIC BLOCK logic is represented by a text definition comprising lines of text instructions; and

switching, while the LOGIC BLOCK object being edited is open in the editor, between the first and second LOGIC BLOCK editing modes, the switching comprising the sub-steps of:

storing a first graphical representation and associated first text representation having attributes of the LOGIC BLOCK logic;

converting the first graphical representation to a second text representation attributes of the LOGIC BLOCK logic;

comparing the second text representation attributes converted from the first graphical representation with the first text representation attributes to determine whether the second text representation attributes differ from the first text representation attributes;

generating, based on a determination that the first text representation attributes differ from the second text representation attributes, a second graphical representation and associated third text representation attributes from the first text representation of the LOGIC BLOCK logic

performing a synchronization test that compares the third text representation attributes with the second text representation attributes;

receiving, based on a determination that the third text representation attributes differ from the second text representation attributes, input from a user; and

updating, based on the input from the user, the second text representation attributes with information from the third text representation attributes.

8. The method of claim 7 wherein the text representation comprises Reverse Polish Notation (RPN) instructions.

9. The method of claim 7 wherein the switching step, when performed to render the graphical representation of the LOGIC BLOCK logic, comprises executing computer-executable instructions to layout the instruction shapes according to a set of pre-defined layout rules.

10. The method of claim 7 wherein the switching step includes a validation step, which verifies that text instructions edited with the LOGIC BLOCK conform to valid control logic syntax.

11. The method of claim 7 wherein performing synchronization test further comprises:

performing a synchronization test that compares the first text representation attributes and the third text representation attributes.

12. The method of claim 11 wherein the performing a synchronization test further comprises:

updating the first text representation attributes of the first graphical representation with the third text representation attributes of the second graphical representation upon detecting a loss of synchronization during said performing a synchronization test that compares the first text representation attributes and the third text representation.

13. A workstation including thereon a physical computer readable medium including computer executable instructions for providing a multi-mode editor that facilitates editing a LOGIC BLOCK object for use in a process control system, the LOGIC BLOCK object comprising a control block configured to perform LOGIC BLOCK logic when executed by a processor on the workstation perform the steps of:

providing, by the editor, a first LOGIC BLOCK editing mode wherein the LOGIC BLOCK logic is represented by a graphical definition comprising instruction shapes and connections between the instruction shapes, wherein said definition further comprises object attributes for process control;

providing, by the editor, a second LOGIC BLOCK editing mode wherein the LOGIC BLOCK logic is represented by a text definition comprising lines of text instructions, wherein said definition further comprises object attributes for process control; and

switching, while the LOGIC BLOCK object being edited is open in the editor, between the first and second LOGIC BLOCK editing modes, the switching comprising the sub-steps of:

storing a first graphical representation and associated first text representation having attributes of the LOGIC BLOCK logic;

converting the first graphical representation to a second text representation attributes of the LOGIC BLOCK logic;

comparing the second text representation attributes converted from the first graphical representation with the first text representation attributes to determine whether the second text representation attributes differ from the first text representation attributes;

generating, based on a determination that the first text representation attributes differ from the second text representation attributes, a second graphical representation and associated third text representation attributes from the first text representation of the LOGIC BLOCK logic;

performing a synchronization test that compares the third text representation attributes with the second text representation attributes;

receiving, based on a determination that the third text representation attributes differ from the second text representation attributes, input from a user; and

updating, based on the input from the user, the second text representation attributes with information from the third text representation attributes.

14. The workstation of claim 13 wherein the text representation comprises Reverse Polish Notation (RPN) instructions.

15. The workstation of claim 13 wherein the switching step, when performed to render the graphical representation of the LOGIC BLOCK logic, comprises executing computer-executable instructions to layout the instruction shapes according to a set of pre-defined layout rules.

16. The workstation of claim 13 wherein the switching step includes a validation step, which verifies that text instructions edited with the LOGIC BLOCK conform to valid control logic syntax.

17. The workstation of claim 13 wherein the performing a synchronization test further comprises:

updating the first text representation attributes of the first graphical representation with the second text representation attributes upon detecting a loss of synchronization during said performing a synchronization test.

Assignments (2)
CHANGE OF NAME Recorded Jul 31, 2017
From: INVENSYS SYSTEMS, INC.
To: SCHNEIDER ELECTRIC SYSTEMS USA, INC.
Reel/Frame 043379/0925 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 1, 2014
From: ELDRIDGE, KEITH E.; FISHBEYN, MIKHAIL VLADIMIROVICH; KING, JOHN P.; MESKONIS, PAUL; HEMENWAY, JAMES WILLIAM
To: INVENSYS SYSTEMS, INC.
Reel/Frame 032798/0272 →