← Back to Patent Explorer
US5168441A Expired / Lapsed US ⏱️ 0.0 years remaining

Methods for set up and programming of machine and process controllers

Assignee: Allen Bradley Co LLC
•
Filing: 1990-05-30
•
Granted: 1992-12-01
•
Expires: 2010-05-30
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Graphical editing methods are employed to construct programs in high-level graphical languages prior to compilation and operation in controllers for industrial or commercial equipment. The editing methods include process, hardware and program editing tasks for defining both process and hardware I/O points and connecting them to variables in a controller program. Each editing task has a tree graph window, a graph editing window, and a palette with rotating panels of graphical editing tools. The hardware editing taks uses two-layered icons to graphically simulate the hardware environment. A plurality of graph types are based on generalized node-vert-arc graphical elements which are special classes programmed in the Smalltalk programming language. Languages for the controller program include function block, sequential function chart and ladder diagram.

Inventors

  • 👤 William G. Onarheim
  • 👤 Horace Dudley
  • 👤 Barbara E. Meyer
  • 👤 Michael J. Viste
  • 👤 David J. Morley

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 12:30
CPC Classifications
G; G05; G05B; G05B19/00; G05B19/02; G05B19/04; G05B19/05; G05B19/056; G05B19/042; G05B19/0426; G05B2219/00; G05B2219/20; G05B2219/23; G05B2219/23002; G05B2219/23157; G05B2219/23255; G05B2219/23258; G05B2219/23273; G05B2219/23291

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 218 words
A method of operating a programming computer to construct a graphical representation of a controller program in preparation for conversion of the controller program into a form for execution by a specific controller, the method comprising: in response to a first plurality of user inputs, constructing one or more related views for display on a screen of the programming computer, wherein the one or more related views show a graph of an industrial or commercial process to be controlled by one or more controllers, the graph including visual representations of objects associated with visual representations of input signals and output signals that are to be monitored and controlled by the specific controller; in response to a second plurality of user inputs, constructing a second group of one or more related views for display of one or more objects representing the controller program on the screen of the programming computer, and for display of visual representations of input and output program variables associated with the objects representing the controller program; and in response to a third plurality of user inputs, visually associating on the screen at the same time the visual representations of the input and output program variables with the visual representations of the input signals and output signals to be monitored and controlled by the specific controller.
Claim 2
Independent Claim 218 words
A method of operating a programming computer to construct a graphical representation of a controller program in preparation for conversion of the controller program into a form for execution by a specific controller, the method comprising: in response to a first plurality of user inputs, constructing one or more related views for display on a screen of the programming computer, wherein the one or more related views show a graph of an industrial or commercial process to be controlled by one or more controllers, the graph including visual representations of objects associated with visual representations of input signals and output signals that are to be monitored and controlled by the specific controller; in response to a second plurality of user inputs, constructing a second group of one or more related views for display of one or more objects representing the controller program on the screen of the programming computer, and for display of visual representations of input and output program variables associated with the objects representing the controller program; and in response to a third plurality of user inputs, visually associating on the screen at the same time the visual representations of the input and output program variables with the visual representations of the input signals and output signals to be monitored and controlled by the specific controller.
Claim 3
Dependent Claim 78 words
The method of claim 1, wherein the visually associating step includes: in response to a fourth plurality of user inputs, visually associating the visual representations of the input signals and output signals to be monitored and controlled with visual representations of the inputs and outputs for controller hardware; and displaying on the screen connections between the visual representations of the input and output program variables and visual representations corresponding to the inputs and outputs for the controller hardware.
Claim 4
Dependent Claim 66 words
The method of claim 2, wherein the inputs and outputs for the controller hardware are visually represented by respective system I/O addresses; and further comprising the step of visually associating on the screen of the programming computer the visual representations of the input and output program variables for the controller program with the respective system I/O addresses for the inputs and outputs for the controller hardware.
Claim 5
Dependent Claim 68 words
The method of claim 2, wherein the input signals and output signals to be monitored and controlled are visually represented with alphanumeric names; and wherein the visual representations of the input signals and output signals to be monitored and controlled are visually associated with the inputs and outputs for the controller hardware by moving the alphanumeric names to graphic positions for inputs and outputs for the controller hardware.
Claim 6
Dependent Claim 38 words
The method of claim 4, wherein the visual representations of the input and output program variables in the controller program are displayed within visual connections to the alphanumeric names for the inputs and outputs for the controller hardware.
Claim 7
Independent Claim 231 words
A method of operating a programming computer to construct a graphical representation of a controller program in preparation for conversion of the controller program into a form for execution by the controller, the method comprising: activating first, second and third graphical editing tasks for display of objects on a screen of the programming computer, wherein each graphical editing task controls display of objects in an editing window that occupies a portion of the screen; during activation of the first graphical editing task, in response to a plurality of user inputs, constructing in the editing window a graph of an industrial or commercial process to be controlled by one or more controllers, and visually representing a plurality of input signals and output signals for the industrial or commercial process; during activation of the second graphical editing task, making one or more user inputs for visually associating the visual representations of the input signals and output signals from the first graphical editing task with a visual representation for a specific controller processor to be programmed to control the industrial or commercial process; and during activation of the third graphical editing task, making one or more user inputs to visually associate the visual representations of the input signals and output signals from the first graphical editing task with visual representations for input and output program variables in a program for the specific controller processor.
Claim 8
Independent Claim 231 words
A method of operating a programming computer to construct a graphical representation of a controller program in preparation for conversion of the controller program into a form for execution by the controller, the method comprising: activating first, second and third graphical editing tasks for display of objects on a screen of the programming computer, wherein each graphical editing task controls display of objects in an editing window that occupies a portion of the screen; during activation of the first graphical editing task, in response to a plurality of user inputs, constructing in the editing window a graph of an industrial or commercial process to be controlled by one or more controllers, and visually representing a plurality of input signals and output signals for the industrial or commercial process; during activation of the second graphical editing task, making one or more user inputs for visually associating the visual representations of the input signals and output signals from the first graphical editing task with a visual representation for a specific controller processor to be programmed to control the industrial or commercial process; and during activation of the third graphical editing task, making one or more user inputs to visually associate the visual representations of the input signals and output signals from the first graphical editing task with visual representations for input and output program variables in a program for the specific controller processor.
Claim 9
Dependent Claim 51 words
The method of claim 6, further comprising, in response to further user inputs, the step of connecting visual representations of a group of hardware inputs and outputs associated with the specific controller processor to visual representations for the input and output program variables in the program for the specific controller processor.
Claim 10
Dependent Claim 58 words
The method of claim 6, wherein each graphical editing task displays a selection bar that extends laterally across a portion of the screen and has three selection areas corresponding to the three graphical editing tasks, wherein each of the graphical editing tasks is activated by selecting a respective one of the selection areas using a mouse input device.
Claim 11
Independent Claim 159 words
A method of operating a programming computer to construct a graphical representation of a controller program in preparation for conversion of the controller program into a form for execution by a controller, the method comprising: activating a graphical editing task to direct display of a tree graph window and a graph editing window concurrently on the screen of the programming computer; wherein the graphical editing task stores in the memory of the programming computer a plurality of graphs for viewing in the graph editing window; wherein the graphical editing task directs display of a tree graph in the tree graph window with branches of the tree graph showing a hierarchical relationship of the plurality of graphs for viewing in the graph editing window; and operating a user input device on the programming computer to select a particular branch of the tree graph to display a selected graph in the graph editing window on the screen of the programming computer.
Claim 12
Independent Claim 159 words
A method of operating a programming computer to construct a graphical representation of a controller program in preparation for conversion of the controller program into a form for execution by a controller, the method comprising: activating a graphical editing task to direct display of a tree graph window and a graph editing window concurrently on the screen of the programming computer; wherein the graphical editing task stores in the memory of the programming computer a plurality of graphs for viewing in the graph editing window; wherein the graphical editing task directs display of a tree graph in the tree graph window with branches of the tree graph showing a hierarchical relationship of the plurality of graphs for viewing in the graph editing window; and operating a user input device on the programming computer to select a particular branch of the tree graph to display a selected graph in the graph editing window on the screen of the programming computer.
Claim 13
Independent Claim 230 words
A method of operating a programming computer to construct a graphical representation of a controller program in preparation for conversion of the controller program into a form for execution by the controller, the method comprising: activating a graphical editing task that controls the display of objects on a screen of the programming computer, wherein the graphical editing task directs display of an editing window that occupies a portion of the screen; and wherein the graphical editing task directs display of a first palette panel which a plurality of selectable functions of the type for adding objects in the editing window and wherein the graphical editing task directs display of a second palette panel with a plurality of selectable functions of the type for adding inputs and outputs on the objects added with the first palette panel; and with a user input device, making selections on the first and second palette panels to select and direct display of objects with inputs and outputs in the editing window; and wherein the graphical editing task includes and displays as part of the first and second palette panels a pair of oppositely pointing scrolling arrows, and wherein the user input device is operated to select one of the scrolling arrows to display one of the first and second palette panels and hide the other one of the first and second palette panels from display.
Claim 14
Independent Claim 230 words
A method of operating a programming computer to construct a graphical representation of a controller program in preparation for conversion of the controller program into a form for execution by the controller, the method comprising: activating a graphical editing task that controls the display of objects on a screen of the programming computer, wherein the graphical editing task directs display of an editing window that occupies a portion of the screen; and wherein the graphical editing task directs display of a first palette panel which a plurality of selectable functions of the type for adding objects in the editing window and wherein the graphical editing task directs display of a second palette panel with a plurality of selectable functions of the type for adding inputs and outputs on the objects added with the first palette panel; and with a user input device, making selections on the first and second palette panels to select and direct display of objects with inputs and outputs in the editing window; and wherein the graphical editing task includes and displays as part of the first and second palette panels a pair of oppositely pointing scrolling arrows, and wherein the user input device is operated to select one of the scrolling arrows to display one of the first and second palette panels and hide the other one of the first and second palette panels from display.
Claim 15
Dependent Claim 54 words
The method of claim 10, wherein the graphical editing task includes and displays a third palette panel with a plurality of selectable locations for objects selected with the first palette panel; and with a user input device, making selections on the third palette panel to display objects with specific locations in the editing window.
Claim 16
Dependent Claim 58 words
The method of claim 10, wherein the graphical editing task includes and displays a third palette panel with a plurality of selectable electrical functions for inputs and outputs selected with the second palette panel; and with a user input device, making selections on the third palette panel to display objects with specific electrical functions in the editing window.
Claim 17
Independent Claim 113 words
A method for use with a computer system of the type having a display screen and a user input device, the method comprising: in response to a first plurality of user inputs, directing display of a graphical image of an electronic controller chassis on the screen, wherein the graphical image has portions corresponding to respective positions for I/O modules; and in response to a second plurality of user inputs, directing display of a graphical image of an I/O module on the screen and superimposing said graphical image of the I/O module on said graphical image of the electronic controller chassis to simulate positioning of an I/O module in an actual electronic controller chassis.
Claim 18
Independent Claim 113 words
A method for use with a computer system of the type having a display screen and a user input device, the method comprising: in response to a first plurality of user inputs, directing display of a graphical image of an electronic controller chassis on the screen, wherein the graphical image has portions corresponding to respective positions for I/O modules; and in response to a second plurality of user inputs, directing display of a graphical image of an I/O module on the screen and superimposing said graphical image of the I/O module on said graphical image of the electronic controller chassis to simulate positioning of an I/O module in an actual electronic controller chassis.
Claim 19
Dependent Claim 92 words
The method of claim 13, wherein the first plurality of user inputs comprises positioning a cursor over a palette of selections to select one of a plurality of electronic controller chassis; operating one or more buttons on the user input device to select a particular controller chassis for display on the screen; positioning the cursor over the display of the particular controller chassis; and operating one or more buttons on the input device to display a second image of the electronic controller chassis which includes portions identifying respective positions for I/O modules.
Claim 20
Dependent Claim 61 words
The method of claim 13, wherein the second plurality of user inputs comprises: operating the user input device to open a menu that includes a command to add an I/O module; and operating the user input device to select the command to add an I/O module in the location with the lowest available I/O module address in the electronic controller chassis.
Claim 21
Dependent Claim 70 words
The method of claim 13, further comprising the step, in response to further user inputs, of directing display of multiple menus, one menu having options for defining the I/O module as including inputs or outputs, another menu having options for the voltage level of such inputs or outputs, and another menu having options for selecting a specific I/O module according to the options selected from the first and second menus.
Claim 22
Dependent Claim 186 words
An object-oriented method of operating a programming computer to construct a graphical representation of a controller program in preparation for conversion of the controller program into a form for execution by the controller, the method comprising: constructing a plurality of graphs including at least one connected graph characterized by an arc linking a first vertex on a first node with a second vertex on a second node; adding nodes to form the graphs by selecting and executing groups of object-oriented instructions for a plurality of node models for the respective graphs, wherein the groups of object-oriented instructions for the plurality of node models are related to a common group of object-oriented instructions for a node class; adding vertices to form the graphs by selecting and executing groups of object-oriented instructions for a plurality of vertex models for the respective graphs, wherein the groups of object-oriented instructions for the plurality of vertex models are related to a common group of object-oriented instructions for a vertex class; and adding arcs to form the connected graph by the selecting and executing groups of object-oriented instructions for an arc class.
Claim 23
Dependent Claim 186 words
An object-oriented method of operating a programming computer to construct a graphical representation of a controller program in preparation for conversion of the controller program into a form for execution by the controller, the method comprising: constructing a plurality of graphs including at least one connected graph characterized by an arc linking a first vertex on a first node with a second vertex on a second node; adding nodes to form the graphs by selecting and executing groups of object-oriented instructions for a plurality of node models for the respective graphs, wherein the groups of object-oriented instructions for the plurality of node models are related to a common group of object-oriented instructions for a node class; adding vertices to form the graphs by selecting and executing groups of object-oriented instructions for a plurality of vertex models for the respective graphs, wherein the groups of object-oriented instructions for the plurality of vertex models are related to a common group of object-oriented instructions for a vertex class; and adding arcs to form the connected graph by the selecting and executing groups of object-oriented instructions for an arc class.
Claim 24
Dependent Claim 51 words
The method of claim 17, wherein the plurality of graphs includes first and second graphs; and further comprising the step of organizing the first and second graphs in a graph hierarchy by storing the second graph in memory and visually representing the second graph as a node in the first graph.
Claim 25
Dependent Claim 82 words
The method of claim 17, wherein the step of constructing a plurality of graphs further comprises the steps of: selecting and executing a first group of object-oriented instructions for constructing a first graph for a process to be controlled, selecting and executing a second group of object-oriented instructions for constructing a second graph for controller hardware to control the process, and selecting and executing a third group of object-oriented instructions for constructing a third graph for a program for the controller hardware.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1995-12-01 1996-06-01 1996-12-01 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1999-12-01 2000-06-01 2000-12-01 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2003-12-01 2004-06-01 2004-12-01 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag