# US 2010/0169632 A1 · Component Configuration Mechanism for Rebooting

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2010/0169632 A1
- Document ID: US20100169632A1
- Status: Published application
- Kind: A1
- Application number: 12/347,300
- Filed: 2008-12-31
- Published: 2010-07-01
- Earliest claimed: 2008-12-31
- Assignees: Schneider Automation Inc.
- Inventors: Enxi Sun; David Doggett
- Web page: https://patentgrep.com/patent/US20100169632A1

## CPC

- G06F 11/1417: {Boot up procedures}
- G06F 11/142: {Reconfiguring to eliminate the error (group management mechanisms in a peer-to-peer network H04L67/1044)}
- G06F 11/2028: {eliminating a faulty processor or activating a spare}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Aspects of the invention support a component configuration mechanism when rebooting a circuit module (201) of a programmable logic controller (101). A component (application) may be configured from a plurality of sources, including flash memory (204) and a web-based configuration source. The configuration mechanism avoids using invalid configuration data when replacing the communication module. The circuit module may support a plurality of components, where some of the components may be associated with a web-based configuration while other components may be associated with a CPU-based configuration. If the configuration data in the flash memory of the communication module is determined to be invalid, the communication module obtains configuration data from a web-based configuration source for a web-based configured component and from an associated CPU module (202) for a CPU-based configured component. The validity of configuration data in internal memory is determined by comparing values of cyclic checksums and configuration times.

## Claims

### Claim 1

A circuit module of a programmable logic controller (PLC) comprising:
an internal memory configured to store stored configuration information;
a communication interface configured to obtain external configuration information from an external configuration source; and
a processor configured to determine a configuration scenario and to select a configuration source based on the configuration scenario, wherein the configuration source is either the internal memory or the external configuration source.

### Claim 2 (depends on 1)

The circuit module of claim 1, wherein the internal memory comprises a flash memory.

### Claim 3 (depends on 1)

The circuit module of claim 1, wherein the circuit module comprises a communication module.

### Claim 4 (depends on 1)

The circuit module of claim 1, wherein the communication interface comprises a network interface that is configured to communicate through a communication network.

### Claim 5 (depends on 4)

The circuit module of claim 4, wherein the communication interface comprises a PLC interface that is configured to communicate with a controller module of the PLC.

### Claim 6 (depends on 5)

The circuit module of claim 5, wherein the processor supports a first component that is associated with a web-based configuration.

### Claim 7 (depends on 6)

The circuit module of claim 6, wherein the controller module comprises a central processing unit (CPU) and wherein the processor supports a second component that is associated with a CPU-based configuration.

### Claim 8 (depends on 6)

The circuit module of claim 6, wherein the processor is further configured to:
compare a first redundancy check stored in the circuit module with a second redundancy check stored in the controller module, wherein the first redundancy check and the second redundancy check are associated with the first component; and
compare a first circuit module (CM) configuration time stored in the circuit module with a second CM configuration time stored in the controller module.

### Claim 9 (depends on 8)

The circuit module of claim 8, wherein the processor is further configured to:
based on the comparing of the redundancy checks and the CM configuration times, selecting the configuration source either from a web-based configuration source or the internal memory.

### Claim 10 (depends on 9)

The circuit module of claim 9, wherein the processor is further configured to:
selecting the configuration source further based on a new module indicator.

### Claim 11 (depends on 7)

The circuit module of claim 7, wherein the processor is further configured to:
compare a first redundancy check stored in the circuit module with a second redundancy check stored in the controller module, wherein the first redundancy check and the second redundancy check are associated with the second component; and
compare a first CPU configuration time stored in the circuit module with a second CPU configuration time stored in controller module.

### Claim 12 (depends on 11)

The circuit module of claim 11, wherein the processor is further configured to:
based on the comparing of the redundancy checks and the CPU configuration times, selecting the configuration source either from a CPU-based configuration source or the internal memory.

### Claim 13 (depends on 12)

The circuit module of claim 12, wherein the processor is further configured to:
selecting the configuration source further based on a new module indicator.

### Claim 14

A method for configuring a circuit module, the method comprising:
determining a configuration scenario from a set of possible configuration scenarios, the set including a first configuration scenario and a second configuration scenario;
when the determined configuration scenario is the first configuration scenario, selecting an internal configuration source;
when the determined configuration scenario is the second configuration scenario, selecting an external configuration source; and
configuring a component of the circuit module using configuration data from the selected configuration source.

### Claim 15 (depends on 14)

The method of claim 14, wherein the internal configuration source comprises a flash memory.

### Claim 16 (depends on 14)

The method of claim 14, wherein the component is associated with a web-based configuration.

### Claim 17 (depends on 16)

The method of claim 16, further comprising:
comparing a first redundancy check stored in the circuit module with a second redundancy check stored in an associated controller module, wherein the first redundancy check and the second redundancy check are associated with the component; and
comparing a first circuit module (CM) configuration time with a second CM configuration time stored in the associated controller module.

### Claim 18 (depends on 17)

The method of claim 17, further comprising:
based on the comparing of the redundancy checks and the CM configuration times, determining the selected configuration source either from a web-based configuration source or the internal configuration source.

### Claim 19 (depends on 14)

The method of claim 14, wherein the component is associated with a CPU-based configuration.

### Claim 20 (depends on 19)

The method of claim 19, further comprising:
comparing a first redundancy check stored in the circuit module with a second redundancy check stored in an associated controller module, wherein the first redundancy check and the second redundancy check are associated with the component; and
comparing a first CPU configuration time stored in the circuit module and a second CPU configuration time stored in the associated controller module.

### Claim 21 (depends on 20)

The method of claim 20, further comprising:
based on the comparing of the redundancy checks and the CPU configuration times, determining the selected configuration source either from a CPU-based configuration source or the internal configuration source.

### Claim 22

A computer-readable storage medium storing computer-executable instructions that, when executed, cause a processor to perform a method comprising:
determining a configuration scenario from a set of possible configuration scenarios, the set including a first configuration scenario and a second configuration scenario;
when the determined configuration scenario is the first configuration scenario, selecting an internal configuration source;
when the determined configuration scenario is the second configuration scenario, selecting an external configuration source; and
configuring the circuit module using configuration data from the selected configuration source.

### Claim 23 (depends on 22)

The computer-readable storage medium of claim 22, wherein the component is associated with a web-based configuration and the method further comprising:
comparing a first redundancy check stored in the circuit module with a second redundancy check stored in an associated controller module, wherein the first redundancy check and the second redundancy check are associated with the component; and
comparing a first circuit module (CM) configuration time with a second CM configuration time stored in the associated controller module.

### Claim 24 (depends on 23)

The computer-readable storage medium of claim 23, the method further comprising:
based on the comparing of the redundancy checks and the CM configuration times, determining the selected configuration source either from a web-based configuration source or the internal configuration source.

### Claim 25 (depends on 22)

The computer-readable storage medium of claim 22, wherein the component is associated with a CPU-based configuration and the method further comprising:
comparing a first redundancy check stored in the circuit module with a second redundancy check stored in an associated controller module, wherein the first redundancy check and the second redundancy check are associated with the component; and
comparing a first CPU configuration time stored in the circuit module and a second CPU configuration time stored in the associated controller module.

### Claim 26 (depends on 25)

The computer-readable storage medium of claim 25, the method further comprising:
based on the comparing of the redundancy checks and the CPU configuration times, determining the selected configuration source either from a CPU-based configuration source or the internal configuration source.

### Claim 27

A programmable logic controller comprising:
a control module configured to obtain CPU configuration data; and
a circuit module comprising an internal memory and configured to:
obtain circuit module (CM) configuration data;
compare the CPU configuration data with the CM configuration data;
determining a configuration scenario from the comparing; and
select a configuration source based on the configuration scenario, wherein the configuration source is either the internal memory or an external configuration source.

### Claim 28 (depends on 27)

The programmable logic controller of claim 27, wherein the circuit module supports a first component that is associated with a web-based configuration and wherein the external configuration source is a web-based configuration source.

### Claim 29 (depends on 28)

The programmable logic controller of claim 28, wherein the circuit module supports a second component that is associated with a CPU-based configuration and wherein the external configuration source is the controller module.

### Claim 30 (depends on 1)

The circuit module of claim 1, wherein the communication interface supports a compatible interface selected from a group consisting of universal serial bus (USB), Modbus Plus, Ethernet, and backplane bus.
