Digital computer monitored and/or operated system or process which is structured for operation with an improved automatic programming process and system
First Claim
1. A system comprising:
- apparatus for implementing system operations;
a digital computer system;
means for conveying signals between said apparatus and said computer system;
means for establishing a signal monitoring system within said computer system, with names assigned to signal variables;
means for accepting job definitions written out in the language of a systems engineer and referring to signal variables by name, and for converting said job definitions into machine executable job definitions within said computer system;
means for accepting conventional computer programs and for establishing them as executable job definitions within the computer system;
means for accepting job definition identifiers and for initiating execution of the corresponding job definitions, said means maintaining a record of the location and type of each job definition; and
means whereby any job definition and also said monitoring system may supply the identifier of any other job definition to said means for accepting and initiating.
0 Assignments
0 Petitions
Accused Products
Abstract
An industrial production or other operational system is established by connecting apparatus which implements system operations to a digital computer system using an interface system. Machine readable definitions of events, of executable jobs, and of system variables are prepared for computer entry and ultimately for configuration of the system apparatus into an entity having operational characteristics corresponding to the entered definitions.
The definitions of system variables may include definitions of signals which are coupled between the system apparatus and the computer through the interface system, and such signals may be put to system monitoring or control uses or both of these uses in the structured system. Some of the definitions may be computer programs, but most are preferably definitions of the system configuration written out in a language which a systems engineer can understand and use. Generally, definitions may include designators which are names or numbers.
Any definition may refer to an event, a job, or a variable by making reference to the designator that is included in the definition of the event, the job or the variable. Executable job definitions may, by referring to event designators, specify specific events which are to trigger their execution--or example, variable scanning events or variable change-of-state events--or they may specify that they are to be periodically executed at a specified frequency or rate. The definitions are processed individually by an off-line preliminary processor which converts the systems engineer'"'"'s language into a numeric language intelligible to processing programs within the computer system or to the computer system itself. The definitions are then fed into the computer system.
Automatic programming means within the computer system establish all the necessary linkages between each new definition and previously entered definitions and other operative portions of the computer system so as to implement each definition relative to the system apparatus as soon as the definition is received and so as automatically to establish the desired system operating configuration through the controlled operation of the computer relative to the interfaced system apparatus.
Definitions may be deleted from the computer system at any time and in any order by the automatic programming means without shutting down the system, and the system operating configuration may thus be modified whenever necessary or desirable. Following such deletions, the automatic programming means eliminates linkages which are no longer required and compresses the tables in which such linkages may be stored so as to maximize the storage space which is available for additional new definitions and their associated linkages.
144 Citations
8 Claims
-
1. A system comprising:
-
apparatus for implementing system operations; a digital computer system; means for conveying signals between said apparatus and said computer system; means for establishing a signal monitoring system within said computer system, with names assigned to signal variables; means for accepting job definitions written out in the language of a systems engineer and referring to signal variables by name, and for converting said job definitions into machine executable job definitions within said computer system; means for accepting conventional computer programs and for establishing them as executable job definitions within the computer system; means for accepting job definition identifiers and for initiating execution of the corresponding job definitions, said means maintaining a record of the location and type of each job definition; and means whereby any job definition and also said monitoring system may supply the identifier of any other job definition to said means for accepting and initiating. - View Dependent Claims (2, 3, 4, 5)
-
-
6. An automated system in which the execution of system operations is carried out under the control of a plurality of differing types of machine-readable job definitions, some of which definitions are executable computer programs and other of which definitions are interpretable data files, said system comprising:
-
a memory containing a plurality of addressable storage locations; loader means for loading job definitions into said memory; table-establishing means for establishing within said memory a table that associates the memory address of job definitions to machine-readable job-definition identifiers and that also indicates whether each job definition is a computer program or a data file; means for executing a computer-program job definition when supplied with the memory address of the program; means for interpreting a data-file job definition when supplied with the memory address of the data file, said means for interpreting including means for extracting data from selected locations in a data file, and means for executing system operations whose precise nature is determined and controlled by the information content of the extracted data; means for initiating the execution of any job definition when supplied with an identifier of the job definition, said means including means having access to said table for determining whether a supplied identifier corresponds to a computer-program job definition or a data-file job definition, means for obtaining from said table the address of the job definition corresponding to a supplied identifier, and means for supplying said address to said means for executing in the case of a computer-program job definition or to said means for interpreting in the case of a data-file job definition; and
means associated with both said means for executing and also said means for interpreting for transferring an identifier from any computer program or data file to said means for initiating.
-
-
7. An automated system in which the execution of system operations is carried out under the joint control of computer programs and job definitions written out in the language of a systems engineer and containing references to system signals by name, said system comprising:
-
means for implementing system operations; sensor means for generating signals indicative of the state of the system; a memory containing a plurality of addressable storage locations; means for maintaining within said memory a record of the state of said signals; means for establishing within said memory a first table relating the addresses of memory locations containing signal state records to names for the corresponding signals; means having access to said first table for converting job definitions written out in the language of a systems engineer and referring to signals by name into compact data files that refer to signals by address; means for loading said compact data files and also conventional computer programs into said memory; means for establishing within said memory a second table relating the addresses of data files and computer programs within said memory to identifiers for each data file and program, and also distinguishing data file addresses from program addresses; first means for interpreting and carrying out system operations called for by a data file when supplied with the data file address; second means for executing a computer program when supplied with the computer program address; means for initiating the execution or interpretation of any data file or computer program when supplied with an identifier of the data file or program, said means including means having access to said second table for determining whether a supplied identifier corresponds to a data file or to a computer program, means for obtaining from said table the address of the data file or program corresponding to a supplied identifier, and means for supplying said address to said first means in the case of a data file and to said second means in the case of a computer program; and means associated with both said first and second means for transferring an identifier from any computer program or data file to said means for initiating.
-
-
8. An automated process control system in which the execution of system operations is carried out under the control of signals whose states may be adjusted by computer programs and job definitions written out in the language of a systems engineer and containing references to system signals by name, said system comprising:
-
means for generating controller signals; means for implementing system operations under the control of said controller signals; means for generating sensor signals indicative of the state of the system; a memory containing a plurality of addressable storage locations; means for maintaining within said memory a record of the state of said sensor signals and a record of the state of said controller signals; means for establishing with said memory a first table relating the address of memory locations containing signal state records to names for the corresponding signals; means having access to said first table for converting job definitions written out in the language of a systems engineer and referring to signals by name into compact data files that refer to signals by address; means for loading said compact data files and also conventional computer programs into said memory; means for establishing within said memory a second table relating the addresses of data files and computer programs within said memory to identifiers for each data file and program, and also distinguishing data file addresses from program addresses; first means for interpreting and carrying out system operations called for by a data file when supplied with the memory address of the data file, including means for altering the state of a controller signal whose address is encountered within a data file; second means for executing a computer program when supplied with the memory address of the program; means for initating the execution or interpretation of any data file or computer program when supplied with an identifier of the data file or program, said means including means having access to said second table for determining whether a supplied identifier corresponds to a data file or to a computer program, means for obtaining from said table the address of the data file or program corresponding to a supplied identifier, and means for supplying said address to said first means in the case of a data file and to said second means in the case of a computer program; and means associated with both said first and second means for transferring an identifier from any computer program or data file to said means for initiating.
-
Specification