# US 6,701,284 B1 · Methods and apparatus for maintaining a programmable logic control revision history

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

- Number: US 6,701,284 B1
- Document ID: US6701284B1
- Status: Granted
- Kind: B1
- Application number: 09/233,713
- Filed: 1999-01-19
- Granted: 2004-03-02
- Earliest claimed: 1998-04-17
- Assignees: GE Fanuc Automation North America, Inc.
- Inventors: William M. Huntley; Stephen A. Hogge
- Web page: https://patentgrep.com/patent/US6701284B1

## CPC

- G05B 19/05: Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- H04L 67/12: specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- G05B 2219/14055: Make log, journal, history file of state changes
- G05B 2219/36101: During machining keep overide log, history, journal, kind of record playback
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Methods and apparatus for maintaining a PLC revision history are described. In one embodiment, the PLC creates and maintains a revision history log that provides information related to changes made to the PLC user program and/or the PLC configuration. If a change is detected, information regarding the change is gathered and stored in the history log. The history log maintains a record of the revisions made to the PLC. If the history log becomes full, the oldest revision entry is deleted and the latest change is incorporated into the history log.

## Claims

### Claim 1

A method for maintaining and updating a revision history in a programmable logic controller (PLC), the PLC having a central processing unit, a memory including a user program stored therein, and a hardware configuration including at least one input/output (I/O) module, said method comprising the steps of:
creating a history log in the PLC memory by:
accessing the PLC memory; and
opening the history log, the history log comprising a plurality of entries,
wherein each entry comprises the time of change and type of change;
detecting whether a change is being made to at least one of the user program stored in the PLC memory and the PLC hardware configuration; and
if a change is detected, then selectively placing an entry in the history log.

### Claim 2 (depends on 1)

A method in accordance with claim 1 wherein each entry of the history log further comprises the person's name or ID, the program name, and comment field information.

### Claim 3 (depends on 1)

A method in accordance with claim 1 wherein the PLC memory comprises space for a history log having at least one entry, and wherein placing an entry into the history log comprises the steps of:
opening the history log;
detecting whether space is available to add an additional entry; and
if space is available, then adding the additional entry to the history log.

### Claim 4 (depends on 3)

A method in accordance with claim 3 wherein placing an entry into the history log further comprises the steps of:
if no space is available, then removing the oldest entry from the history log and adding the additional entry to the history log.

### Claim 5 (depends on 3)

A method in accordance with claim 3 wherein the step of adding the additional entry to the history log comprises the step of incorporating information related to the persons name or ID, time of change, type of change, program name, and comment fields.

### Claim 6 (depends on 3)

A method in accordance with claim 3 wherein the PLC memory comprises space for at least twenty entries.

### Claim 7 (depends on 1)

A method in accordance with claim 1 wherein user program is stored in the PLC memory.

### Claim 8 (depends on 7)

A method in accordance with claim 7 wherein the PLC memory comprises a random access memory and the user program is stored in the random access memory, and wherein the step of placing an entry into the history log comprises the steps of:
detecting whether a history log signal is present at the PLC; and
if a history log signal is detected, then updating the history log.

### Claim 9 (depends on 8)

A method in accordance with claim 8 wherein the step of updating the history log comprises the steps of:
accessing the PLC random access memory;
adding an entry to the history log; and
closing the history log.

### Claim 10

A system for maintaining a revision history, said system comprising a central processing unit, a memory, a user program stored in the memory, and a hardware configuration comprising at least one I/O module, said system configured to:
create a history log in the memory by:
accessing the memory; and
opening the history log, wherein the history log comprises at least one entry that comprises the time of change and type of change;
detect whether a change is being made in at least one of the user program stored in the memory and the system hardware configuration; and
if a change is detected, then selectively place an entry into the history log.

### Claim 11 (depends on 10)

A system in accordance with claim 10 wherein the memory comprises space for a history log having at least one entry, and wherein to place an entry into the history log, said system is configured to:
open the history log;
detect whether space is available to add an additional entry; and
if space is available, then add the additional entry to the history log.

### Claim 12 (depends on 11)

A system in accordance with claim 11 wherein to place an entry into the history log, said system is further configured to:
if no space is available, then remove the oldest entry from the history log and add the additional entry to the history log.

### Claim 13 (depends on 11)

A system in accordance with claim 11 wherein to add the additional entry to the history log, said system is configured to incorporate information related to the time of change and type of change.

### Claim 14 (depends on 11)

A system in accordance with claim 11 wherein the memory comprises space for at least twenty entries.

### Claim 15 (depends on 10)

A system in accordance with claim 10 wherein user program is stored in the PLC memory.

### Claim 16 (depends on 15)

A system in accordance with claim 15 wherein the memory comprises a random access memory and the user program is stored in the random access memory, and wherein to place an entry into the history log said system is configured to:
detect whether a history log signal is present at the central processing unit; and
if a history log signal is detected, then update the history log.

### Claim 17 (depends on 16)

A system in accordance with claim 16 wherein to update the history log, said system is configured to:
access the random access memory;
add an entry to the history log; and
close the history log.
