Industrial controller with flexible data structures
First Claim
1. A method of operating an industrial controller executing a control program and having a memory containing an I/O table storing data used and generated by the control program, the industrial controller further having a plurality of connected I/O devices exchanging data with the I/O table of the industrial controller, the method comprising the steps of:
- (a) receiving at the controller software templates associated with each I/O device, each software template defining data elements needed to exchange data between its associated I/O device and the industrial controller, the software template indicating;
(i) predetermined data types denoting the size of data of the data element and(ii) a predetermined order indicating the order in which the data elements will be transmitted to the industrial controller;
(b) based on the software template, allocating at the industrial controller a portion of the I/O table of the industrial controller to the data elements of each I/O device according to the software template, the portion having a starting physical address in the I/O table and a size determined from the software template;
(c) preparing a symbol list of symbols unique to and identifiable to each I/O device, each symbol associated by the symbol list with the starting physical address for a data element of the I/O device per the software template; and
(d) providing symbols of the symbol list to a programmer for preparation of a control program;
(e) compiling the control program by replacing the symbols used in the control program with the physical addresses deduced from the symbol list.
2 Assignments
0 Petitions
Accused Products
Abstract
An improvement in an industrial controller having a processor with a memory holding an I/O table used for storing inputs and outputs transmitted between the industrial controller and a controlled process, via multiple I/O devices, uses templates associated with each I/O device to define the partitioning of the I/O table for the data. The templates define data types and ordering of data required for the particular I/O device permitting the space in the I/O table to be efficiently and intuitively allocated. The templates also relate physical addresses in the I/O table to program variables used by the control program.
34 Citations
5 Claims
-
1. A method of operating an industrial controller executing a control program and having a memory containing an I/O table storing data used and generated by the control program, the industrial controller further having a plurality of connected I/O devices exchanging data with the I/O table of the industrial controller, the method comprising the steps of:
-
(a) receiving at the controller software templates associated with each I/O device, each software template defining data elements needed to exchange data between its associated I/O device and the industrial controller, the software template indicating; (i) predetermined data types denoting the size of data of the data element and (ii) a predetermined order indicating the order in which the data elements will be transmitted to the industrial controller; (b) based on the software template, allocating at the industrial controller a portion of the I/O table of the industrial controller to the data elements of each I/O device according to the software template, the portion having a starting physical address in the I/O table and a size determined from the software template; (c) preparing a symbol list of symbols unique to and identifiable to each I/O device, each symbol associated by the symbol list with the starting physical address for a data element of the I/O device per the software template; and (d) providing symbols of the symbol list to a programmer for preparation of a control program; (e) compiling the control program by replacing the symbols used in the control program with the physical addresses deduced from the symbol list. - View Dependent Claims (2, 3, 4, 5)
-
Specification