# US 11,177,828 B2 · Data collection apparatus, method, and program

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

- Number: US 11,177,828 B2
- Document ID: US11177828B2
- Status: Granted
- Kind: B2
- Application number: 17/284,792
- Filed: 2018-12-27
- Published: 2021-10-14
- Granted: 2021-11-16
- Earliest claimed: 2018-12-27
- Assignees: Mitsubishi Electric Corporation
- Applicants: Mitsubishi Electric Corporation
- Inventors: Ryo Kashiwagi; Osamu Nasu
- Web page: https://patentgrep.com/patent/US11177828B2

## CPC

- G05B 23/0221: {Preprocessing measurements, e.g. data collection rate adjustment; Standardization of measurements; Time series or signal analysis, e.g. frequency analysis or wavelets; Trustworthiness of measurements; Indexes therefor; Measurements using easily measured parameters to estimate parameters difficult to measure; Virtual sensor creation; De-noising; Sensor fusion; Unconventional preprocessing inherently present in specific fault detection methods like PCA-based methods}
- H03M 13/095: {Error detection codes other than CRC and single parity bit codes}
- G05B 19/0428: {Safety, monitoring (G05B19/0423 takes precedence)}
- G05B 19/056: {Programming the PLC}
- G05B 19/058: {Safety, monitoring}
- G05B 23/0224: {Process history based detection method, e.g. whereby history implies the availability of large amounts of data}
- H03M 13/09: Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
- H04L 1/0061: {Error detection codes}
- H04Q 9/00: Arrangements in telecontrol or telemetry systems for selectively calling a substation from a main station, in which substation desired apparatus is selected for applying a control signal thereto or for obtaining measured values therefrom
- G05B 2219/14006: Safety, monitoring in general
- G05B 2219/14114: Integrity, error detector, switch off controller, fail safe
- G06F 13/4243: {with synchronous protocol}
- H04L 1/0045: {Arrangements at the receiver end}
- 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)
- H03M: CODING; DECODING; CODE CONVERSION IN GENERAL (using fluidic means F15C4/00; optical analogue/digital converters G02F7/00; coding, decoding or code conversion, specially adapted for particular applications, see the relevant subclasses, e.g. G01D, G01R, G06F, G06T, G09G, G10L, G11B, G11C, H04B, H04L, H04M, H04N; ciphering or deciphering for cryptography or other purposes involving the need for secrecy G09C)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04Q: SELECTING (switches, relays, selectors H01H; wireless communication networks H04W)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A collector included in a data collection apparatus performs data collection to collect data from a PLC. A controller included in the data collection apparatus determines whether the collector is valid depending on whether the collector at a time when an instruction to start the data collection is provided matches the collector at a preset time, and causes the collector to start the data collection in response to the collector being valid.

## Claims

### Claim 1

A data collection apparatus comprising:
a collector including a module of a program, the module being for implementing a function of performing data collection to collect data from a device; and
a controller to determine that the collector is valid when a first error detection code calculated for the module at a preset time matches a second error detection code calculated for the module at a time when an instruction to start the data collection is provided, and to cause, upon determining that the collector is valid, the collector to start the data collection.

### Claim 2 (depends on 1)

The data collection apparatus according to claim 1, wherein the controller determines whether the collector is valid depending on whether the first error detection code matches the second error detection code calculated for the module included in the collector after the instruction to start the data collection is provided.

### Claim 3 (depends on 1)

The data collection apparatus according to claim 1, wherein the controller, in response to the second error detection code failing to match the first error detection code, determines that the collector is invalid and does not cause the collector to start the data collection.

### Claim 4 (depends on 1)

The data collection apparatus according to claim 1, further comprising:
an individual information storage to store the first error detection code.

### Claim 5 (depends on 4)

The data collection apparatus according to claim 4, wherein
the collector is a plurality of the collectors,
the individual information storage is a plurality of the individual information storage each associated with a corresponding one of the plurality of collectors,
each of the plurality of individual information storage stores the first error detection code calculated in advance for the module included in the corresponding collector, and
the controller calculates the second error detection code for the module included in the collector after the instruction to start the data collection is provided by a user and before the controller causes the collector to start the data collection, and determines whether the collector is valid depending on whether the second error detection code matches the first error detection code calculated in advance.

### Claim 6 (depends on 1)

The data collection apparatus according to claim 1, wherein
the first error detection code is a redundant code that is generated, from an execution file in the program for implementing the function of performing the data collection, in creation of the execution file, and
the controller generates a redundant code as the second error detection code from the execution file in the program before causing to start the data collection, and determines whether the collector is valid depending on whether the calculated second error detection code matches the first error detection code.

### Claim 7 (depends on 6)

The data collection apparatus according to claim 6, wherein the controller executes the execution file in response to the collector being valid.

### Claim 8 (depends on 1)

The data collection apparatus according to claim 1, wherein
the controller provides setting data indicating a setting for the data collection to the collector upon determining that the collector is valid,
the setting data includes information identifying the device, and
the collector collects data from the device indicated by the information identifying the device.

### Claim 9 (depends on 8)

The data collection apparatus according to claim 8, wherein
the setting data further includes time interval information indicating an interval at which data is collected, and
the collector collects data from the device at the interval indicated by the time interval information.

### Claim 10 (depends on 8)

The data collection apparatus according to claim 8, wherein
the setting data further includes end time information indicating a time for ending the data collection, and
the collector ends the data collection at the time indicated by the end time information.

### Claim 11

A method comprising:
determining, for an execution file in a collection program for performing data collection to collect data from a device, whether the execution file is valid depending on whether a first error detection code calculated for the execution file at a preset time matches a second error detection code calculated for the execution file at a time when an instruction to start the data collection is provided; and
executing the collection program in response to the execution file being valid.

### Claim 12

A non-transitory recording medium storing a program for causing a computer to perform operations comprising:
determining, for an execution file in a collection program for performing data collection to collect data from device, whether the execution file is valid depending on whether a first error detection code calculated for the execution file at a preset time matches a second error detection code calculated for the execution file at a time when an instruction to start the data collection is provided; and
executing the collection program in response to the execution file being valid.

### Claim 13 (depends on 1)

The data collection apparatus according to claim 1, wherein the device includes a factory automation device.
