Sign In to Follow Application
View All Documents & Correspondence

"Method And System For Converting Ladder Logic To Boolean Logic In A Process Control System"

Abstract: Disclosed herein is a method of converting a ladder logic routine into Boolean logic. Boolean representations of the ladder logic elements of the ladder logic routine are collected in respective logic expressions for each ladder rung of the plurality of ladder rungs defining the ladder logic routine. Boolean logic elements are then resolved from the logic expressions. The Boolean logic elements are then stored in a memory in an order in which the Boolean logic elements are resolved to express the ladder logic routine in accordance with an execution order of the ladder logic routine.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
21 December 2005
Publication Number
40/2009
Publication Type
INA
Invention Field
ELECTRONICS
Status
Email
remfry-sagar@remfry.com
Parent Application

Applicants

EMERSON PROCESS MANAGEMENT POWER & WATER SOLUTIONS
200 BETA DRIVE, PITTSBURGH, PENNSYLVANIA 15238, U.S.A

Inventors

1. FREDERICK F. KLEIN
1852 OLD RAMSEY ROAD, MONROEVILLE, PENNSYLVANIA 15146, U.S.A

Specification

METHOD AND SYSTEM FOR CONVERTING LADDER LOGIC TO BOOLEAN LOGIC IN A PROCESS CONTROL SYSTEM BACKGROUND OF THE INVENTION Field of the Invention [0001] The invention generally relates to process control routines and, more specifically, to control routines using ladder logic. Brief Description of Related Technology [0002] Ladder logic has often been used to express control routines implemented in process control systems. Ladder logic has its origins in expressing relay-based logic, where each relay is expressed as a coil and one or more contacts controlling whether the coil is energized. To that end, the contacts and coil for each relay are arranged on a rung connected between two power rails, thereby presenting a ladder. Outside of relays and relay networks, ladder logic has been extensively applied as a standard programming paradigm for programmable logic controllers (PLCs), which have been used to implement control logic for a variety of process control operations. The logic and routines executed by PLCs may often be expressed in other programming paradigms, such as Boolean logic. However, ladder logic has remained one of the preferred programming paradigms, particularly when the logic can be easily expressed as a series of relay coils and contacts. [0003] To address the increased complexity of process control routines, process control systems utilizino PLCs have been upgraded to incorporate more advanced diaital languages, such as object-oriented programming languages. These advanced controllers are routinely integrated in widespread networks that rely on distributed process control techniques having one or more operator workstations to provide user interfaces for configuration, maintenance, and other control functions. In these cases, the user interfaces provide the capability of reprogramming a controller remotely. To this end, the workstations and other user interfaces execute configuration software and other routines that enable control personnel to view and modify the control logic being implemented throughout the process control system. As a result of these innovations, maintaining a process control system that integrates a number of controllers can be handled without requiring personnel to visit each controller individually with a handheld or other portable device for programming and other work, as was often the case with PLCs. [0004] Despite these advances and innovations in process control, many systems are still using ladder logic to express the control logic executed by controllers or other devices within the network. Unfortunately, personnel responsible for maintaining the system may now be more comfortable working with the higher level programming languages and Boolean logic, rather than ladder logic. As a result, maintenance and other work directed to improving or re-configuring ladder logic systems may inefficiently require one or more manual translations of the logic. More specifically, a first translation process may be required to convert the control routine from ladder logic into Boolean logic to enable those individuals more familiar with Boolean logic to diagnose problems or design improvements in the control routine. Because this translation is often performed manually, the process is often time-consuming and prone to errors, in which case further translations may become necessary. [0005] U.S. Patent No. 5,623,401 issued to Baxter describes a control system operating method that involves a technique for converting ladder logic of a limited and sequence of transition routines that ensures that only changes in certain variables are processed during operation. Thus, these transition routines are generated to optimize execution, rather than for supporting the types of logic design, configuration, maintenance or other work described above in the context of advanced process control systems. As a result, the results are not made available, stored or .expressed in a way that supports further design, configuration, maintenance or other work on the logic routine. SUMMARY OF THE INVENTION [0006] Disclosed herein is an automated logic conversion technique that may be implemented as a system, method or computer program for automated translation or conversion of a routine expressed in ladder logic. The disclosed technique converts the ladder logic into a set of Boolean logic elements in a manner that enables further design, configuration, maintenance, and other work on the routine and the underlying logic. [0007] In accordance with one aspect of the conversion technique, a method is useful for processing a routine expressed via ladder logic elements arranged in a plurality of ladder rungs and in accordance with an execution order. The method includes collecting Boolean representations of the ladder logic elements in a respective logic expression for each ladder rung of the plurality of ladder rungs, resolving Boolean logic elements from the logic expressions, and storing information regarding the Boolean logic elements in a memory in accordance with the execution order to express the routine in Boolean logic. [0008] In certain embodiments, the resolving step is performed if further collection of the Boolean representations in one of the respective logic expressions would result in a combination of dissimilar Boolean logic functions. [0009] The collecting step may include the ^teps of evaluating each ladder logic element to determine an operation effected thereby and updating the respective logic memory a definition of the Boolean logic element as an object disassociated from the logic expression. The object may be written to a position in the memory relative to further objects associated with further Boolean logic elements that preserves the execution order of the routine. The ladder logic elements may be arranged in columnar positions within each ladder rung and wherein the execution order proceeds in columnar fashion. [0010] In one embodiment, the method further includes the step of proceeding to a different ladder rung of the plurality of ladder rungs for a subsequent ladder logic element evaluation prior to evaluating another ladder logic element in the first-named ladder rung. [0011] In cases where the ladder logic has special functions, the method includes the steps of (i) identifying a non-Boolean function having units spread over multiple ladder rungs of the plurality of ladder rungs, and (ii) resolving a further Boolean logic element from a respective logic expression for the ladder rung of the plurality of ladder rungs connected to an input of the non-Boolean function. The method may further include the step of storing an object representative of the non-Boolean function in the memory in accordance with the execution order. [0012] In one embodiment, the collecting step includes the step of combining two or more respective logic expressions for adjacent ladder rungs of the plurality of ladder rungs linked via one or more OR functions to create a composite logic expression for each of the two or more respective logic expressions. The combining step may include the step of executing a recursive procedure. [0013] In accordance with another aspect of the conversion technique, a system includes a processor, a computer-readable memory coupled to the processor, and a logic conversion routine stored in the computer-readable memory and configured to be executable by the processor. The logic conversion routine, in turn, includes a ladder logic element processing routine that collects Boolean representations of the ladder logic elements in a logic element processing routine then resolves a Boolean logic element from the respective logic expression when further collection would set forth dissimilar Boolean functions in the respective logic expression. [0014] In one embodiment, the logic conversion routine further includes an OR function processing routine that, when an OR function is encountered,

Documents

Application Documents

# Name Date
1 3423-del-2005-gpa.pdf 2011-08-21
2 3423-del-2005-form-5.pdf 2011-08-21
3 3423-del-2005-form-3.pdf 2011-08-21
4 3423-del-2005-form-2.pdf 2011-08-21
5 3423-del-2005-form-18.pdf 2011-08-21
6 3423-del-2005-form-1.pdf 2011-08-21
7 3423-del-2005-drawings.pdf 2011-08-21
8 3423-del-2005-description (complete).pdf 2011-08-21
9 3423-del-2005-correspondence-others.pdf 2011-08-21
10 3423-del-2005-claims.pdf 2011-08-21
11 3423-del-2005-assignment.pdf 2011-08-21
12 3423-del-2005-abstract.pdf 2011-08-21
13 3423-DEL-2005_EXAMREPORT.pdf 2016-06-30