EP3872667A1 - Control device - Google Patents
Control device Download PDFInfo
- Publication number
- EP3872667A1 EP3872667A1 EP19874884.0A EP19874884A EP3872667A1 EP 3872667 A1 EP3872667 A1 EP 3872667A1 EP 19874884 A EP19874884 A EP 19874884A EP 3872667 A1 EP3872667 A1 EP 3872667A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- unit
- control device
- processing
- data
- feature extraction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims abstract description 131
- 230000005856 abnormality Effects 0.000 claims abstract description 100
- 238000000605 extraction Methods 0.000 claims abstract description 57
- 238000007726 management method Methods 0.000 claims abstract description 55
- 238000013500 data storage Methods 0.000 claims abstract description 37
- 238000012544 monitoring process Methods 0.000 claims abstract description 25
- 238000001514 detection method Methods 0.000 description 75
- 238000003860 storage Methods 0.000 description 24
- 238000004458 analytical method Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 19
- 238000010801 machine learning Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 16
- 238000000034 method Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 238000012423 maintenance Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000007418 data mining Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/14—Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0224—Process history based detection method, e.g. whereby history implies the availability of large amounts of data
- G05B23/024—Quantitative history assessment, e.g. mathematical relationships between available data; Functions therefor; Principal component analysis [PCA]; Partial least square [PLS]; Statistical classifiers, e.g. Bayesian networks, linear regression or correlation analysis; Neural networks
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0243—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model
- G05B23/0254—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model based on a quantitative model, e.g. mathematical relationships between inputs and outputs; functions: observer, Kalman filter, residual calculation, Neural Networks
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0259—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
- G05B23/0283—Predictive maintenance, e.g. involving the monitoring of a system and, based on the monitoring results, taking decisions on the maintenance schedule of the monitored system; Estimating remaining useful life [RUL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
Definitions
- the present invention relates to a control device capable of detecting any abnormality that may occur in a monitoring target.
- Predictive maintenance means a maintenance mode in which a maintenance work such as a reparation or a replacement is performed before the equipment is put into a stopped state, by detecting any abnormality occurring in the machine or device.
- the content such as which state value is collected to realize abnormality detection or what kind of algorithm of abnormality detection is adopted is, so to speak, know-how, and there is a need to conceal the content.
- Patent Literatures 1 and 2 do not consider such a new problem at all. Therefore, the above-mentioned Patent Literatures 1 and 2 only protect the program itself in the control device, but cannot protect the data during processing.
- An object of the present invention is to provide a mechanism capable of appropriately protecting know-how related to abnormality detection processing.
- a control device that controls a control target includes: a feature extraction unit which calculates one or a plurality of feature amounts from one or a plurality of state values acquired from a monitoring target; a processing unit which calculates a score which is a value indicating a possibility that any abnormality has occurred in the monitoring target, based on the one or the plurality of feature amounts calculated by the feature extraction unit, with reference to a learning model; a determination unit which generates a determination result indicating whether any abnormality has occurred in the monitoring target, based on the score calculated by the processing unit; a first data storage unit which stores at least one of data related to processing in the feature extraction unit and data related to processing in the processing unit; a second data storage unit which stores an arbitrary state value capable of being referred to by the control device; and an authority management unit which restricts access to the first data storage unit.
- data related to the processing in the feature extraction unit and data related to the processing in the processing unit, regarding the know-how related to the abnormality detection processing are stored in the first data storage unit in which access is restricted by the authority management unit.
- any state value that can be referred to by the control device is stored in the second data storage unit, it is possible to easily confirm the validity.
- the data related to the processing in the feature extraction unit may include the one or the plurality of feature amounts calculated by the feature extraction unit. According to this configuration, it is possible to appropriately conceal the feature amounts calculated by the feature extraction unit, which is one of the know-how related to the abnormality detection processing.
- the feature extraction unit may calculate the one or plurality of feature amounts from one or a plurality of state values specified by setting information from outside, and the data related to the processing in the feature extraction unit may include the setting information. According to this configuration, it is possible to appropriately conceal the setting information, which is one of the know-how related to abnormality detection processing.
- the data related to the processing in the processing unit may include the score calculated by the processing unit. According to this configuration, it is possible to appropriately conceal the score calculated by the processing unit, which is one of the know-how related to the abnormality detection processing.
- the authority management unit may restrict the access to programs for realizing the feature extraction unit and the processing unit. According to this configuration, since it is possible to protect not only the input to the feature extraction unit and the processing unit or the output from the feature extraction unit and the processing unit, but also the feature extraction unit and the processing unit itself, the know-how related to the abnormality detection processing can be appropriately protected.
- the second data storage unit may further store the determination result generated by the determination unit. According to this configuration, since the determination result is stored in the second data storage unit in addition to the state value, the ex-post analysis processing can be facilitated.
- the authority management unit may determine whether an authority to access the first data storage unit is granted based on identification information and a password. According to this configuration, since a general authority management method can be adopted, a versatility can be enhanced.
- the authority management unit may have a private key corresponding to a public key held by an external device that accesses the first data storage unit, and the authority management unit may decrypt the identification information and the password encrypted by the public key transmitted from the external device with the private key, and then determine whether the authority to access the first data storage unit is granted. According to this configuration, it is possible to ensure security for the identification information and the password exchanged between the control device and the external device.
- the authority management unit may transmit, to the external device, a common key for encrypting data exchanged with the external device. According to this configuration, it is possible to ensure security for the data provided from the control device to the external device.
- abnormality detection system An example of a functional configuration of a control system capable of executing abnormality detection processing according to the present embodiment will be described.
- the entire control system is also referred to as "abnormality detection system”.
- FIG. 1 is a schematic diagram showing an overall configuration example of the abnormality detection system 1 according to the present embodiment.
- the abnormality detection system 1 includes, as main components, a control device 100 that controls a control target, and a support device 200 that can be connected to the control device 100.
- the abnormality detection system 1 may further include a host server 300 and a display device 400, as an optional configuration.
- the control device 100 generates a determination result indicating whether any abnormality has occurred in a monitoring target included in the control target.
- the control device 100 may be embodied as a kind of computer, such as a PLC (programmable controller).
- control device 100 is connected to a field device group 10 via a first fieldbus 2, and is connected to one or a plurality of display devices 400 via a second fieldbus 4. Further, the control device 100 is connected to the host server 300 via a local network 6. The control device 100 exchanges data with the connected device via each network.
- the control device 100 has an abnormality detection function that executes various control calculations for controlling equipment and machines and detects an abnormality that occurs in the control target. By mounting the abnormality detection function on the control device 100, it is possible to detect an abnormality that may occur in the control target in a shorter cycle.
- the "state value” is a term including a value that can be observed by an arbitrary control target (or a monitoring target), and may include, for example, a physical value that can be measured by an arbitrary sensor, an ON/OFF state of a relay, a switch, or the like, a command value such as a position, speed, and torque given to the servo driver by the PLC, and a variable value used by the PLC for calculation.
- the state value observed by an arbitrary control target and transmitted to the control device 100 is also referred to as "input value" below.
- first fieldbus 2 and a second fieldbus 4 it is preferable to adopt a network that performs fixed cycle communication in which an arrival time of data is guaranteed.
- EtherCAT registered trademark
- EtherCAT registered trademark
- the field device group 10 includes a device that collects a state value of the control target or a manufacturing device or a production line related to control (hereinafter, also collectively referred to as "field") as an input value.
- An input relay, various sensors, and the like are assumed as a device which acquires such a state value.
- the field device group 10 further includes a device that exerts some action on the field, based on a command value (hereinafter, also referred to as "output value”) generated by the control device 100.
- An output relay, a contactor, a servo driver and a servo motor, and any other actuator are assumed as the device that exerts some action on the field.
- the field device group 10 exchanges data including input values and output values with the control device 100 via the first fieldbus 2.
- the field device group 10 includes a remote I/O (Input/Output) device 12, a relay group 14, an image sensor 18, a camera 20, a servo driver 22, and a servo motor 24.
- a remote I/O (Input/Output) device 12 includes a remote I/O (Input/Output) device 12, a relay group 14, an image sensor 18, a camera 20, a servo driver 22, and a servo motor 24.
- the remote I/O device 12 includes a communication unit that communicates via the first fieldbus 2, and an input/output unit (hereinafter, also referred to as "I/O unit") for acquiring an input value and outputting an output value. Input values and output values are exchanged between the control device 100 and the field via such an I/O unit.
- FIG. 1 shows an example in which digital signals are exchanged as input values and output values via the relay group 14.
- the I/O unit may be directly connected to the fieldbus.
- FIG. 1 shows an example in which the I/O unit 16 is directly connected to the first fieldbus 2.
- the image sensor 18 performs image measurement processing such as pattern matching on the image data captured by the camera 20, and transmits the processing result to the control device 100.
- the servo driver 22 drives the servo motor 24 according to an output value (for example, a position command or the like) from the control device 100.
- I/O refresh processing As described above, data is exchanged between the control device 100 and the field device group 10 via the first fieldbus 2, and the exchanged data are updated in a very short cycle of several hundreds of microsecond order to several tens of millisecond order.
- the data update processing of such exchanged data may be referred to as "I/O refresh processing".
- the support device 200 is a device that supports the preparation necessary for the control device 100 to control the control target. Specifically, the support device 200 provides a development environment of program (program creation and editing tool, parser, compiler, or the like) executed by the control device 100, a setting environment for setting parameters (configuration) of the control device 100 and various devices connected to the control device 100, a function of transmitting the generated user program to the control device 100, a function of modifying and changing the user program or the like executed on the control device 100 online, and the like.
- program program creation and editing tool, parser, compiler, or the like
- the support device 200 provides functions such as various settings or data generation and transmission for realizing the abnormality detection processing in the control device 100.
- the upper server 300 is connected to the control device 100 via the local network 6 and exchanges necessary data with the control device 100.
- the upper server 300 has, for example, a database function, and collects various data stored in the control device 100 periodically or on an event basis.
- a general-purpose protocol such as Ethernet (registered trademark) may be implemented in the local network 6.
- the display device 400 is connected to the control device 100 via the second fieldbus 4, receives a manipulation from the user, transmits a command or the like according to the user manipulation to the control device 100, and graphically displays the processing results and the like of the control device 100.
- FIG. 2 is a schematic view showing a main part of the control device 100 constituting the abnormality detection system 1 according to the present embodiment.
- the control device 100 includes a feature extraction unit 140, a machine learning processing unit 144, a result determination unit 146, an authority management unit 130, and a restricted database (hereinafter, also abbreviated as "restricted DB”) 180, and a public database (hereinafter, also abbreviated as "public DB”) 190.
- restricted DB restricted database
- public DB public database
- the feature extraction unit 140 calculates one or a plurality of feature amounts 150 from one or a plurality of state values 164 acquired from the monitoring target. At this time, the feature extraction unit 140 calculates the one or the plurality of feature amounts 150 from the one or the plurality of state values 164 designated by the setting information 158 from the outside.
- the machine learning processing unit 144 calculates a score 154 which is a value indicating possibility that any abnormality has occurred in the monitoring target, based on the one or the plurality of feature amounts 150 calculated by the feature extraction unit 140, by referring to the learning model 152.
- the result determination unit 146 generates a determination result 170 indicating whether any abnormality has occurred in the monitoring target based on the score 154 calculated by the machine learning processing unit 144. At this time, the result determination unit 146 determines whether any abnormality has occurred in the monitoring target, based on the score 154 by referring to the determination condition 156.
- the restricted DB 180 corresponds to a data storage unit that stores at least one of the data related to the processing in the feature extraction unit 140 and the data related to the processing in the machine learning processing unit 144.
- the public DB 190 corresponds to the data storage unit that stores an arbitrary state value that can be referred to by the control device 100. Further, the authority management unit 130 restricts access to the restricted DB 180.
- control device 100 by preparing two types of databases (data storage units) having different access authorities, means for protecting the know-how related to the abnormality detection processing and securing various analysis methods and the like is provided.
- FIG. 3 is a block diagram showing a hardware configuration example of the control device 100 constituting the abnormality detection system 1 according to the present embodiment.
- the control device 100 includes a processor 102 such as a CPU (Central Processing Unit) and an MPU (Micro-Processing Unit), a chip set 104, a main storage device 106, a secondary storage device 108, a local network controller 110, a USB (Universal Serial Bus) controller 112, a memory card interface 114, an internal bus controller 122, fieldbus controllers 118 and 120, and I/O units 124-1, 124-2,....
- a processor 102 such as a CPU (Central Processing Unit) and an MPU (Micro-Processing Unit)
- a main storage device 106 such as a main storage device 106, a secondary storage device 108, a local network controller 110, a USB (Universal Serial Bus) controller 112, a memory card interface 114, an internal bus controller 122, fieldbus controllers 118 and 120, and I
- the processor 102 reads various programs stored in the secondary storage device 108, deploys and executes them in the main storage device 106, thereby realizing control depending on the control target and various processing as described later.
- the chipset 104 together with the processor 102, controls each component to realize the processing of the control device 100 as a whole.
- the secondary storage device 108 stores a user program executed by utilizing the execution environment provided by the system program 126, in addition to the system program 126 (corresponding to the control program) for realizing the function provided by the control device 100.
- the local network controller 110 controls the exchange of data with other devices via the local network 6.
- the USB controller 112 controls the exchange of data with the support device 200 via the USB connection.
- the memory card interface 114 is configured so that the memory card 116 can be attached and detached, and is able to write data to the memory card 116, and read various data (user programs, trace data, and the like) from the memory card 116.
- the internal bus controller 122 is an interface for exchanging data with the I/O units 124-1, 124-2,... mounted on the control device 100.
- the fieldbus controller 118 controls the exchange of data with other devices via the first fieldbus 2.
- the fieldbus controller 120 controls the exchange of data with other devices via the second fieldbus 4.
- FIG. 3 shows a configuration example in which the necessary functions are provided by executing the program by the processor 102.
- some or all of the functions provided may be implemented using a dedicated hardware circuit (for example, an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or the like).
- the main part of the control device 100 may be realized using hardware that follows a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer).
- a plurality of operating systems (OS) having different purposes may be executed in parallel using the virtualization technology, and necessary applications may be executed on each OS.
- OS operating systems
- the support device 200 is realized, for example, by executing a program, using hardware (for example, a general-purpose personal computer) that follows a general-purpose architecture.
- hardware for example, a general-purpose personal computer
- FIG. 4 is a block diagram showing a hardware configuration example of the support device 200 that constitutes the abnormality detection system 1 according to the present embodiment.
- the support device 200 includes a processor 202 such as a CPU or an MPU, a drive 204, a main storage device 206, a secondary storage device 208, a USB controller 212, a local network controller 214, an input unit 216, and a display unit 218. These components are connected via a bus 220.
- the processor 202 realizes various processing as described below, by reading various programs stored in the secondary storage device 208, deploying and executing the programs in the main storage device 206.
- the secondary storage device 208 is made up of, for example, an HDD (Hard Disk Drive), an SSD (Solid State Drive) or the like.
- the secondary storage device 208 typically stores various programs which includes a development program (not shown) for creating a user program executed by the support device 200, debugging the created program, defining a system configuration, setting various parameters, and the like, a data mining tool 250, and a setting tool 260.
- the secondary storage device 208 may store the OS and other necessary programs.
- the drive 204 is able to write data to the storage medium 205 and read various data (user program, trace data, time series data, or the like) from the storage medium 205.
- the storage medium 205 includes, for example, a storage medium 205 (for example, an optical storage medium such as a DVD (Digital Versatile Disc)) that temporarily stores a computer-readable program.
- the program or data stored therein is read from the memory card 116 or the storage medium 205, and installed in an internal storage region such as the secondary storage device 208.
- Various programs executed by the support device 200 may be installed via a computer-readable memory card 116 or a storage medium 205, or may be installed in the form of downloading from a server device or the like on the network. Further, in some cases, the function provided by the support device 200 according to the present embodiment may be realized in the form of utilizing a part of the module provided by the OS.
- the USB controller 212 controls the exchange of data with the control device 100 via the USB connection.
- the local network controller 214 controls the exchange of data with other devices via an arbitrary network.
- the input unit 216 is made up of a keyboard, a mouse, and the like, and accepts the user manipulations.
- the display unit 218 is made up of a display, various indicators, and the like, and outputs a processing result and the like from the processor 202.
- a printer may be connected to the support device 200.
- FIG. 4 shows a configuration example in which the necessary functions are provided by executing the program by the processor 202, some or all of the functions provided may be implemented using a dedicated hardware circuit (for example, an ASIC, an FPGA or the like).
- a dedicated hardware circuit for example, an ASIC, an FPGA or the like.
- FIG. 5 is a block diagram showing a basic software configuration example of the abnormality detection system 1 according to the present embodiment.
- the control device 100 executes the abnormality detection processing, based on various types of information provided by the support device 200.
- the control device 100 includes a variable management unit 160, a feature extraction unit 140, a learning model generation unit 142, a machine learning processing unit 144, a result determination unit 146, and an authority management unit 130.
- the variable management unit 160 acquires a state value (input value) appearing in a control target such as a machine or a device for each predetermined control cycle, and updates the internal state value. Further, the variable management unit 160 updates the command value (output value) calculated by the execution of the user program or the like for each control cycle. That is, the variable management unit 160 executes at least a part of the processing related to the I/O refresh processing, and updates the input value acquired from the control target and the output value given to the control target for each control cycle.
- control device 100 In the control device 100 according to the present embodiment, a form of referring in the form of "variables" is adopted for any of the state value (input value) acquired from the control target, the command value (output value) given to the control target, and the data or values (all included in “internal state values") used for the arithmetic processing in the control device 100 or the state management of the control device 100. Therefore, in the following description, the values available in the control device 100 may be expressed as “variable values”. Further, a set of internal state values indicating the state values generated in a control target such as a machine or a device is expressed as a "device variable".
- the present invention is not restricted to the form of referring the value using the "variable”, but is also applicable to a form of directly designating and referring a physical address of a memory for storing each value.
- the feature extraction unit 140 calculates one or a plurality of feature amounts 150 from one or a plurality of state values acquired from the monitoring target. More specifically, the feature extraction unit 140 calculates the one or the plurality of feature amounts 150 (for example, an average value, a maximum value, a minimum value, or the like over a predetermined time) periodically or for each event according to a predetermined processing, from the value (a temporal change of the unit interval) indicated by one or a plurality of device variables 162 (state values) of the specified target, according to the setting information 158 set by the support device 200.
- the unit interval used by the feature extraction unit 140 to calculate the feature amount 150 is also referred to as "frame" below.
- the unit interval (frame) is arbitrarily set depending on the operation of the monitoring target.
- the machine learning processing unit 144 calculates a certain score 154 which is a value indicating a possibility that any abnormality has occurred in the monitoring target, based on the one or the plurality of feature amounts 150 calculated by the feature extraction unit 140, by referring to the learning model 152.
- the learning model 152 is provided by the learning model generator 142.
- the machine learning processing unit 144 adopts a method of calculating a score corresponding to the input value, based on the degree of deviation of the input value with respect to a value group in a hyperspace, as an algorithm of the abnormality detection.
- a method of detecting abnormality based on the degree of deviation a method of detecting abnormality based on the shortest distance from each point to the value group (k-nearest neighbours algorithm), a local outlier factor method that evaluates the distance including the cluster including the value group (LoF: local outlier factor), an iForest (isolation forest) method of using a score calculated from the path length, and the like are known.
- the learning model 152 When the learning model 152 is made up of feature amounts at the time of normality, it is possible to determine that the greater the degree of deviation from the learning model 152 (that is, the score) is, the higher the possibility that any abnormality has occurred in the monitoring target is. On the other hand, when the learning model 152 is made up of feature amounts at the time of abnormality, it is possible to determine that the smaller the degree of deviation from the learning model 152 (that is, the score) is, the higher the possibility that any abnormality has occurred in the monitoring target is.
- the learning model generation unit 142 generates the learning model 152 according to the instruction from the support device 200.
- the learning model generation unit 142 may be provided in a part of the support device 200.
- the learning model 152 itself is provided from the support device 200 to the control device 100. More specifically, the learning model 152 may be generated, by extracting necessary data, using the data mining tool 250 of the support device 200.
- the result determination unit 146 generates a determination result 170 indicating whether any abnormality has occurred in the monitoring target based on the score 154 calculated by the machine learning processing unit 144.
- the determination condition 156 may be set by the support device 200.
- the determination condition 156 includes a threshold range which is set for the score 154 and indicates that there is a high possibility that any abnormality has occurred in the monitoring target.
- the authority management unit 130 provides a function of restricting an access to software modules, programs, and the like mounted on the control device 100. Details of the authority management unit 130 will be described later.
- the support device 200 sets the setting information 158 and the determination condition 156 for the control device 100. More specifically, the support device 200 has a setting tool 260, and the setting tool 260 is in charge of setting processing of various data to the control device 100.
- the feature extraction unit 140, the learning model generation unit 142, and the machine learning processing unit 144 are mounted on the control device 100 in relation to the abnormality detection processing.
- the change or confirmation of the definition contents by anyone other than a user who has received a predetermined authority is prohibited.
- the prohibition of such a manipulation is for maintaining the operation of the abnormality detection system 1 at a constant state and protecting the operation state as know-how, and is managed by the authority management unit 130.
- the authority management unit 130 associates with the setting tool 260 of the support device 200 to thereby manage manipulations on the feature extraction unit 140, the learning model generation unit 142, and the machine learning processing unit 144 using a password or the like.
- FIG. 6 is a schematic diagram showing a range of operation restrictions which are set for the software configuration example shown in FIG. 5 .
- the authority management unit 130 restricts the manipulations on the feature extraction unit 140, the learning model generation unit 142, and the machine learning processing unit 144. That is, the authority management unit 130 restricts access to the programs for realizing the feature extraction unit 140, the learning model generation unit 142, and the machine learning processing unit 144. As a result, it is possible to conceal know-how such as definition contents which are set in the feature extraction unit 140, the learning model generation unit 142, and the machine learning processing unit 144.
- the abnormality detection processing it is also necessary to evaluate the validity of the abnormality detection processing (that is, whether it is properly executed). In this case, it is necessary to confirm various data (for example, the feature amount 150 and the score 154) calculated or generated in the abnormality detection processing. When referring to such various data, it is easy to infer the definition contents in the abnormality detection processing, and there is also a possibility that the know-how cannot be sufficiently concealed.
- control device 100 may also be equipped with a function of collecting time series data by data logging or the like to evaluate whether the control calculation is properly executed. It is also possible to infer the definition contents in the abnormality detection processing, by analyzing the time series data of the internal state values which are collected using such a data logging function and held by the control device 100. In such a case, there is also a possibility that the know-how may not be sufficiently concealed as described above.
- the abnormality detection system 1 provides a configuration having merits to not only the software related to the abnormality detection processing, but also a provider of the know-how related to the abnormality detection processing (that is, a settlor of the definition contents) and a beneficiary of the abnormality detection processing.
- FIG. 7 is a block diagram showing a more detailed software configuration example of the abnormality detection system 1 according to the present embodiment.
- the control device 100 has two types of databases for storing various data. Specifically, the control device 100 includes a restricted database (hereinafter, also abbreviated as "restricted DB”) 180 in which an access is restricted by the authority management unit 130, and a public database (hereinafter, also abbreviated as "public DB”) 190 in which an access is not restricted).
- restricted DB restricted database
- public DB public database
- the data related to the know-how of the abnormality detection processing is stored in the restricted DB 180, and the data necessary for using the result of the abnormality detection processing is stored in the public DB 190.
- the restricted DB 180 stores data related to know-how of the abnormality detection processing. That is, the restricted DB 180 is a data storage unit that stores at least one of the data related to the processing in the feature extraction unit 140 and the data related to the processing in the machine learning processing unit 144. More specifically, the restricted DB 180 stores the time information, the frame identification information, the feature amounts, the scores, and the like. This information is basically stored in the form of time series data. Further, the restricted DB 180 may store the contents of the setting information 158 that is set from the support device 200 (what kind of feature amount is calculated from which variable). This information is stored as static information in a table format.
- FIG. 8 is a schematic diagram showing an example of data stored in the restricted DB 180 of the control device 100 shown in FIG. 7 .
- the time series data 182 shown in FIG. 8A and the setting data 184 shown in FIG. 8B are stored in the restricted DB 180.
- the time series data 182 shown in FIG. 8A includes data which are sequentially generated by executing the feature extraction unit 140, the learning model generation unit 142, the machine learning processing unit 144, the result determination unit 146, and the like. More specifically, the time series data 182 includes an index 1821, a time stamp 1822, a frame ID 1823, a feature amount 1824, and a score 1825.
- the index 1821 is information for specifying each record, and is a unique value that is arbitrarily given by the control device 100. Typically, the index 1801 is incremented or decremented for each collection cycle. It is possible to determine presence or absence of lack of data, by using the value to be incremented or decremented.
- the time stamp 1822 is time information indicating the timing at which each record is generated.
- the time information is provided by a time counting means managed by the control device 100.
- the frame ID 1823 is identification information for specifying the unit interval (frame) at which the data used for generating each record is collected. Typically, the values of device variables used to determine the frame are stored.
- the feature amount 1824 stores the value of the feature amount 150 sequentially calculated by the feature extraction unit 140. That is, the data related to the processing in the feature extraction unit 140 stored in the restricted DB 180 includes the one or the plurality of feature amounts 150 calculated by the feature extraction unit 140.
- the score 1825 stores the value of the score 154 sequentially calculated by the machine learning processing unit 144. That is, the data related to the processing in the feature extraction unit 140 stored in the restricted DB 180 includes the score 154 calculated by the machine learning processing unit 144.
- the setting data 184 shown in FIG. 8B describes the contents of the setting information 158 set for the feature extraction unit 140 by the support device 200. More specifically, the setting data 184 includes a feature amount ID 1841, a device variable 1842, and a feature amount type 1843.
- the feature amount ID 1841 is identification information for specifying the feature amount calculated by the feature extraction unit 140.
- the device variable 1842 stores information that identifies the device variable used for calculating the corresponding feature amount.
- the feature amount type 1843 stores information for specifying the calculating method of the corresponding feature amount.
- the data related to the processing in the feature extraction unit 140 stored in the restricted DB 180 includes the setting information 158.
- the public DB 190 stores arbitrary data other than the data related to the know-how of abnormality detection processing. That is, the public DB 190 is a data storage unit that stores an arbitrary state value that can be referred to by the control device 100.
- FIG. 9 is a schematic diagram showing an example of data stored in the public DB 190 of the control device 100 shown in FIG. 7 .
- the time series data 192 shown in FIG. 9 is stored in the public DB 190.
- the values updated for each control cycle (I/O refresh processing cycle) of one or a plurality of device variables 162 (state values) managed by the variable management unit 160 are sequentially stored in the time series data 192. More specifically, the time series data 192 includes an index 1921, a time stamp 1922, and a device variable 1923.
- the index 1921 is information for specifying each record, and is a unique value arbitrarily given in the control device 100. Typically, the index 1901 is incremented or decremented for each collection cycle. By using the value to be incremented or decremented, it is possible to determine presence or absence of lack of data. Moreover, the same value as the index 1821 may be used for the time series data 182 of FIG. 8A , or a value set independently for each time series data may be used.
- the time stamp 1922 is time information indicating the timing at which each record is generated.
- the time information is provided by a time counting means managed by the control device 100.
- the device variable 1923 stores the values of one or a plurality of device variables 162 which are arbitrarily set.
- the data items shown in FIGS. 8 and 9 are examples, and data items other than the data items shown may be stored, or another data item may be stored in place of some data items.
- the public DB 190 may further store the determination result 170 generated by the result determination unit 146.
- the data related to the know-how of abnormality detection processing is stored only in the restricted DB 180, but is not stored in the public DB 190.
- the data necessary for using the result of the abnormality detection processing (basically, it is not directly related to the know-how of the abnormality detection processing) is stored in the public DB 190.
- the access to the data stored in the restricted DB 180 of the control device 100 is restricted to a user who has received a predetermined authority. Further, it is preferable that the data read from the restricted DB 180 of the control device 100 is also securely transmitted.
- An implementation example for realizing the access restriction to the restricted DB 180 and the secure transmission of read data will be described below.
- FIG. 10 is a block diagram showing an implementation example for restricting an access to the restricted DB 180 in the abnormality detection system 1 according to the present embodiment.
- processing of setting the authority for an access to the control device 100 using the setting tool 260 of the support device 200 and accessing the control device 100 from the analysis device 600 by the authorized user is assumed.
- the authority management unit 130 determines whether the authority to access the restricted DB 180 is granted, based on the identification information (ID) and the password (Password).
- the setting tool 260 of the support device 200 is prepared with a pair of the private key 262 and the public key 264.
- the administrator user of the abnormality detection system 1 manipulates the setting tool 260 of the support device 200 to set identification information (ID) and the password (Password) for specifying a user who can access the authority management unit 130 of the control device 100 ((1) setting).
- This setting content is stored in the authority setting table 266.
- the administrator user of the abnormality detection system 1 manipulates the setting tool 260 of the support device 200 to set the private key 262 in the authority management unit 130 ((2) provision of private key), and set the public key 264 corresponding to the private key 262 in the analysis device 600 ((3) provision of public key).
- the authority management unit 130 has a private key 262 corresponding to the public key 264 held by the analysis device 600, which is an external device that accesses the restricted DB 180.
- the user who has received the predetermined authority manipulates the analysis device 600 and inputs the identification information (ID) and password (Password) given to the user.
- the input identification information (ID) and password (Password) are encrypted by the public key 264 stored in the analysis device 600 and are transmitted to the control device 100 ((4) input ID + Password (encryption by public key)).
- the authority management unit 130 of the control device 100 executes processing (authentication processing) of decrypting the identification information (ID) and the password (Password) encrypted by the public key 264 transmitted from the analysis device 600 with the private key 262, and determining whether the authority to access the restricted DB 180 is granted, with reference to the authority setting table 266 ((5) authentication).
- the authority management unit 130 of the control device 100 When the authority management unit 130 of the control device 100 succeeds in the authentication processing, the authority management unit 130 generates a common key 268 used for transmission of data ((6) common key generation). Further, the authority management unit 130 of the control device 100 transmits the generated common key 268 to the analysis device 600 ((7) common key transmission). That is, when the authority management unit 130 determines that the authority to access the restricted DB 180 is granted, the authority management unit 130 transmits, to the analysis device 600, the common key 268 for encrypting the data exchanged with the analysis device 600.
- the authority management unit 130 of the control device 100 transmits the common key 268 to the analysis device 600 after encryption using the private key 262.
- the common key 268 encrypted from the analysis device 600 is decrypted by the public key 264 of the own device.
- the data stored in the restricted DB 180 is transmitted to the analysis device 600 by using the common key 268 which is common between the authority management unit 130 of the control device 100 and the analysis device 600 ((8) data transmission (encryption due to common key)). More specifically, the encryption unit 132 of the authority management unit 130 encrypts the data stored in the restricted DB 180 using the common key 268, and then transmits the data to the analysis device 600. The analysis device 600 decrypts the encrypted data using the common key 268.
- the public DB 190 can basically be accessed from any device connected to the control device 100. In this way, the contents of the public DB 190 can be arbitrarily referred to by the user of the control device 100, and meanwhile, the contents of the restricted DB 180 can be referred only to the user to which the predetermined authority is granted.
- any transmission protocol such as HTTP (hypertext transfer protocol) or FTP (file transfer protocol) can be used.
- FIG. 10 shows a configuration in which an access from the analysis device 600 connected to the network is accepted for the restricted DB 180 of the control device 100
- the present invention is not limited thereto, and only a user having a predetermined authority may take out the data via the memory card 116 that can be attached to the control device 100.
- the present embodiment as described above includes the following technical ideas.
- a control device (100) which controls a control target including:
- control device in which the data related to the processing in the feature extraction unit includes the one or the plurality of feature amounts (150) calculated by the feature extraction unit.
- the control device in which the feature extraction unit calculates the one or plurality of feature amounts (150) from one or a plurality of state values specified by setting information (158) from outside, and the data related to the processing in the feature extraction unit includes the setting information.
- control device according to any one of configurations 1 to 3, in which the data related to the processing in the processing unit includes the score (154) calculated by the processing unit.
- control device in which the authority management unit restricts the access to programs for realizing the feature extraction unit and the processing unit.
- control device according to any one of configurations 1 to 5, in which the second data storage unit further stores the determination result (170) generated by the determination unit.
- the control device according to any one of the configurations 1 to 6, in which the authority management unit determines whether an authority to access the first data storage unit is granted based on identification information and a password (266).
- the control device in which the authority management unit has a private key (262) corresponding to a public key (264) held by an external device that accesses the first data storage unit, and the authority management unit decrypts the identification information and the password encrypted by the public key transmitted from the external device with the private key, and then determines whether the authority to access the first data storage unit is granted.
- the control device in which when the authority management unit determines that the authority to access the first data storage unit is granted, the authority management unit transmits, to the external device, a common key (268) for encrypting data exchanged with the external device.
- the abnormality detection system it is possible to provide a mechanism that can appropriately protect the know-how related to the abnormality detection processing, and can facilitate ex-post analysis processing, by preparing two types of data storage units of the restricted DB 180 in which an access is restricted and the public DB 190 which can be accessed arbitrarily.
- the abnormality detection system since it is possible to realize access restriction using the identification information and the password, and data protection using the public key, the private key, and the common key, a necessary security can be ensured.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
Description
- The present invention relates to a control device capable of detecting any abnormality that may occur in a monitoring target.
- At various production sites, there is a need to improve equipment utilization rate by predictive maintenance of a machine or a device. Predictive maintenance means a maintenance mode in which a maintenance work such as a reparation or a replacement is performed before the equipment is put into a stopped state, by detecting any abnormality occurring in the machine or device.
- In order to realize the predictive maintenance, it is necessary to collect state values of the machine and device and to determine whether any abnormality has occurred in the machines or devices, based on the collected state values.
- On the other hand, the content, such as which state value is collected to realize abnormality detection or what kind of algorithm of abnormality detection is adopted is, so to speak, know-how, and there is a need to conceal the content.
- When the abnormality detection processing is implemented in a control device such as a PLC (programmable controller), for example, a necessary program is described using a PLC programming language defined in IEC 61131-3. It is possible to prohibit access to the program itself in the control device using a limiting technique as disclosed in
Japanese Patent Laid-open No. 2007-280348 Japanese Patent Laid-open No. 2005-154688 -
- Patent Literature 1:
Japanese Patent Application Laid-open No. 2007-280348 - Patent Literature 2:
Japanese Patent Application Laid-open No. 2005-154688 - However, in order to protect the know-how related to abnormality detection processing, it is necessary to conceal not only the program but also the data during processing. The above-mentioned
Patent Literatures Patent Literatures - An object of the present invention is to provide a mechanism capable of appropriately protecting know-how related to abnormality detection processing.
- A control device that controls a control target according to an example of the present invention includes: a feature extraction unit which calculates one or a plurality of feature amounts from one or a plurality of state values acquired from a monitoring target; a processing unit which calculates a score which is a value indicating a possibility that any abnormality has occurred in the monitoring target, based on the one or the plurality of feature amounts calculated by the feature extraction unit, with reference to a learning model; a determination unit which generates a determination result indicating whether any abnormality has occurred in the monitoring target, based on the score calculated by the processing unit; a first data storage unit which stores at least one of data related to processing in the feature extraction unit and data related to processing in the processing unit; a second data storage unit which stores an arbitrary state value capable of being referred to by the control device; and an authority management unit which restricts access to the first data storage unit.
- According to this configuration, data related to the processing in the feature extraction unit and data related to the processing in the processing unit, regarding the know-how related to the abnormality detection processing, are stored in the first data storage unit in which access is restricted by the authority management unit. On the other hand, since any state value that can be referred to by the control device is stored in the second data storage unit, it is possible to easily confirm the validity.
- The data related to the processing in the feature extraction unit may include the one or the plurality of feature amounts calculated by the feature extraction unit. According to this configuration, it is possible to appropriately conceal the feature amounts calculated by the feature extraction unit, which is one of the know-how related to the abnormality detection processing.
- The feature extraction unit may calculate the one or plurality of feature amounts from one or a plurality of state values specified by setting information from outside, and the data related to the processing in the feature extraction unit may include the setting information. According to this configuration, it is possible to appropriately conceal the setting information, which is one of the know-how related to abnormality detection processing.
- The data related to the processing in the processing unit may include the score calculated by the processing unit. According to this configuration, it is possible to appropriately conceal the score calculated by the processing unit, which is one of the know-how related to the abnormality detection processing.
- The authority management unit may restrict the access to programs for realizing the feature extraction unit and the processing unit. According to this configuration, since it is possible to protect not only the input to the feature extraction unit and the processing unit or the output from the feature extraction unit and the processing unit, but also the feature extraction unit and the processing unit itself, the know-how related to the abnormality detection processing can be appropriately protected.
- The second data storage unit may further store the determination result generated by the determination unit. According to this configuration, since the determination result is stored in the second data storage unit in addition to the state value, the ex-post analysis processing can be facilitated.
- The authority management unit may determine whether an authority to access the first data storage unit is granted based on identification information and a password. According to this configuration, since a general authority management method can be adopted, a versatility can be enhanced.
- The authority management unit may have a private key corresponding to a public key held by an external device that accesses the first data storage unit, and the authority management unit may decrypt the identification information and the password encrypted by the public key transmitted from the external device with the private key, and then determine whether the authority to access the first data storage unit is granted. According to this configuration, it is possible to ensure security for the identification information and the password exchanged between the control device and the external device.
- When the authority management unit determines that the authority to access the first data storage unit is granted, the authority management unit may transmit, to the external device, a common key for encrypting data exchanged with the external device. According to this configuration, it is possible to ensure security for the data provided from the control device to the external device.
- According to the present invention, it is possible to provide a mechanism capable of appropriately protecting the know-how related to the abnormality detection processing.
-
-
FIG. 1 is a schematic diagram showing an overall configuration example of an abnormality detection system according to the present embodiment. -
FIG. 2 is a schematic diagram showing a main part of a control device constituting an abnormality detection system according to the present embodiment. -
FIG. 3 is a block diagram showing a hardware configuration example of the control device constituting the abnormality detection system according to the present embodiment. -
FIG. 4 is a block diagram showing a hardware configuration example of the support device constituting the abnormality detection system according to the present embodiment. -
FIG. 5 is a block diagram showing a basic software configuration example of an abnormality detection system according to the present embodiment. -
FIG. 6 is a schematic diagram showing a range of operation restrictions set for the software configuration example shown inFIG. 5 . -
FIG. 7 is a block diagram showing a more detailed software configuration example of the abnormality detection system according to the present embodiment. -
FIG. 8 is a schematic diagram showing an example of data stored in the restricted DB of the control device shown inFIG. 7 . -
FIG. 9 is a schematic diagram showing an example of data stored in a public DB of the control device shown inFIG. 7 . -
FIG. 10 is a block diagram showing an implementation example for restricting access to a restricted DB in theabnormality detection system 1 according to the present embodiment. - An embodiment of the present invention will be described in detail with reference to the drawings. The same or corresponding parts in the drawings are denoted by the same reference numerals and the description thereof will not be repeated.
- First, an example of a situation to which the present invention is applied will be described.
- An example of a functional configuration of a control system capable of executing abnormality detection processing according to the present embodiment will be described. In the following description, since the abnormality detection processing of the control system will be mainly described, the entire control system is also referred to as "abnormality detection system".
- First, an example of the overall configuration of the
abnormality detection system 1 according to the present embodiment will be described. -
FIG. 1 is a schematic diagram showing an overall configuration example of theabnormality detection system 1 according to the present embodiment. Referring toFIG. 1 , theabnormality detection system 1 includes, as main components, acontrol device 100 that controls a control target, and asupport device 200 that can be connected to thecontrol device 100. Theabnormality detection system 1 may further include ahost server 300 and adisplay device 400, as an optional configuration. - The
control device 100 generates a determination result indicating whether any abnormality has occurred in a monitoring target included in the control target. Thecontrol device 100 may be embodied as a kind of computer, such as a PLC (programmable controller). - More specifically, the
control device 100 is connected to afield device group 10 via afirst fieldbus 2, and is connected to one or a plurality ofdisplay devices 400 via asecond fieldbus 4. Further, thecontrol device 100 is connected to thehost server 300 via alocal network 6. Thecontrol device 100 exchanges data with the connected device via each network. - The
control device 100 has an abnormality detection function that executes various control calculations for controlling equipment and machines and detects an abnormality that occurs in the control target. By mounting the abnormality detection function on thecontrol device 100, it is possible to detect an abnormality that may occur in the control target in a shorter cycle. - In the present specification, the "state value" is a term including a value that can be observed by an arbitrary control target (or a monitoring target), and may include, for example, a physical value that can be measured by an arbitrary sensor, an ON/OFF state of a relay, a switch, or the like, a command value such as a position, speed, and torque given to the servo driver by the PLC, and a variable value used by the PLC for calculation.
- The state value observed by an arbitrary control target and transmitted to the
control device 100 is also referred to as "input value" below. - As a
first fieldbus 2 and asecond fieldbus 4, it is preferable to adopt a network that performs fixed cycle communication in which an arrival time of data is guaranteed. EtherCAT (registered trademark) or the like is known as a network that performs such fixed cycle communication. - The
field device group 10 includes a device that collects a state value of the control target or a manufacturing device or a production line related to control (hereinafter, also collectively referred to as "field") as an input value. An input relay, various sensors, and the like are assumed as a device which acquires such a state value. Thefield device group 10 further includes a device that exerts some action on the field, based on a command value (hereinafter, also referred to as "output value") generated by thecontrol device 100. An output relay, a contactor, a servo driver and a servo motor, and any other actuator are assumed as the device that exerts some action on the field. Thefield device group 10 exchanges data including input values and output values with thecontrol device 100 via thefirst fieldbus 2. - In the configuration example shown in
FIG. 1 , thefield device group 10 includes a remote I/O (Input/Output)device 12, arelay group 14, an image sensor 18, acamera 20, aservo driver 22, and aservo motor 24. - The remote I/
O device 12 includes a communication unit that communicates via thefirst fieldbus 2, and an input/output unit (hereinafter, also referred to as "I/O unit") for acquiring an input value and outputting an output value. Input values and output values are exchanged between thecontrol device 100 and the field via such an I/O unit.FIG. 1 shows an example in which digital signals are exchanged as input values and output values via therelay group 14. - The I/O unit may be directly connected to the fieldbus.
FIG. 1 shows an example in which the I/O unit 16 is directly connected to thefirst fieldbus 2. - The image sensor 18 performs image measurement processing such as pattern matching on the image data captured by the
camera 20, and transmits the processing result to thecontrol device 100. - The
servo driver 22 drives theservo motor 24 according to an output value (for example, a position command or the like) from thecontrol device 100. - As described above, data is exchanged between the
control device 100 and thefield device group 10 via thefirst fieldbus 2, and the exchanged data are updated in a very short cycle of several hundreds of microsecond order to several tens of millisecond order. The data update processing of such exchanged data may be referred to as "I/O refresh processing". - The
support device 200 is a device that supports the preparation necessary for thecontrol device 100 to control the control target. Specifically, thesupport device 200 provides a development environment of program (program creation and editing tool, parser, compiler, or the like) executed by thecontrol device 100, a setting environment for setting parameters (configuration) of thecontrol device 100 and various devices connected to thecontrol device 100, a function of transmitting the generated user program to thecontrol device 100, a function of modifying and changing the user program or the like executed on thecontrol device 100 online, and the like. - Further, the
support device 200 provides functions such as various settings or data generation and transmission for realizing the abnormality detection processing in thecontrol device 100. - The
upper server 300 is connected to thecontrol device 100 via thelocal network 6 and exchanges necessary data with thecontrol device 100. Theupper server 300 has, for example, a database function, and collects various data stored in thecontrol device 100 periodically or on an event basis. A general-purpose protocol such as Ethernet (registered trademark) may be implemented in thelocal network 6. - The
display device 400 is connected to thecontrol device 100 via thesecond fieldbus 4, receives a manipulation from the user, transmits a command or the like according to the user manipulation to thecontrol device 100, and graphically displays the processing results and the like of thecontrol device 100. - Next, the main part related to the abnormality detection processing and the data storage related to the abnormality detection processing in the
abnormality detection system 1 according to the present embodiment will be described. -
FIG. 2 is a schematic view showing a main part of thecontrol device 100 constituting theabnormality detection system 1 according to the present embodiment. Referring toFIG. 2 , thecontrol device 100 includes afeature extraction unit 140, a machinelearning processing unit 144, aresult determination unit 146, anauthority management unit 130, and a restricted database (hereinafter, also abbreviated as "restricted DB") 180, and a public database (hereinafter, also abbreviated as "public DB") 190. - The
feature extraction unit 140 calculates one or a plurality of feature amounts 150 from one or a plurality of state values 164 acquired from the monitoring target. At this time, thefeature extraction unit 140 calculates the one or the plurality of feature amounts 150 from the one or the plurality ofstate values 164 designated by the settinginformation 158 from the outside. - The machine
learning processing unit 144 calculates ascore 154 which is a value indicating possibility that any abnormality has occurred in the monitoring target, based on the one or the plurality of feature amounts 150 calculated by thefeature extraction unit 140, by referring to thelearning model 152. - The
result determination unit 146 generates adetermination result 170 indicating whether any abnormality has occurred in the monitoring target based on thescore 154 calculated by the machinelearning processing unit 144. At this time, theresult determination unit 146 determines whether any abnormality has occurred in the monitoring target, based on thescore 154 by referring to thedetermination condition 156. - The restricted
DB 180 corresponds to a data storage unit that stores at least one of the data related to the processing in thefeature extraction unit 140 and the data related to the processing in the machinelearning processing unit 144. On the other hand, thepublic DB 190 corresponds to the data storage unit that stores an arbitrary state value that can be referred to by thecontrol device 100. Further, theauthority management unit 130 restricts access to the restrictedDB 180. - As shown in
FIG. 2 , in thecontrol device 100 according to the present embodiment, by preparing two types of databases (data storage units) having different access authorities, means for protecting the know-how related to the abnormality detection processing and securing various analysis methods and the like is provided. - Next, a hardware configuration example of the main devices constituting the
abnormality detection system 1 according to the present embodiment will be described. -
FIG. 3 is a block diagram showing a hardware configuration example of thecontrol device 100 constituting theabnormality detection system 1 according to the present embodiment. With reference toFIG. 3 , thecontrol device 100 includes aprocessor 102 such as a CPU (Central Processing Unit) and an MPU (Micro-Processing Unit), achip set 104, amain storage device 106, asecondary storage device 108, alocal network controller 110, a USB (Universal Serial Bus)controller 112, amemory card interface 114, aninternal bus controller 122,fieldbus controllers - The
processor 102 reads various programs stored in thesecondary storage device 108, deploys and executes them in themain storage device 106, thereby realizing control depending on the control target and various processing as described later. Thechipset 104, together with theprocessor 102, controls each component to realize the processing of thecontrol device 100 as a whole. - The
secondary storage device 108 stores a user program executed by utilizing the execution environment provided by thesystem program 126, in addition to the system program 126 (corresponding to the control program) for realizing the function provided by thecontrol device 100. - The
local network controller 110 controls the exchange of data with other devices via thelocal network 6. TheUSB controller 112 controls the exchange of data with thesupport device 200 via the USB connection. - The
memory card interface 114 is configured so that thememory card 116 can be attached and detached, and is able to write data to thememory card 116, and read various data (user programs, trace data, and the like) from thememory card 116. - The
internal bus controller 122 is an interface for exchanging data with the I/O units 124-1, 124-2,... mounted on thecontrol device 100. - The
fieldbus controller 118 controls the exchange of data with other devices via thefirst fieldbus 2. Similarly, thefieldbus controller 120 controls the exchange of data with other devices via thesecond fieldbus 4. -
FIG. 3 shows a configuration example in which the necessary functions are provided by executing the program by theprocessor 102. However, some or all of the functions provided may be implemented using a dedicated hardware circuit (for example, an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or the like). Alternatively, the main part of thecontrol device 100 may be realized using hardware that follows a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer). In this case, a plurality of operating systems (OS) having different purposes may be executed in parallel using the virtualization technology, and necessary applications may be executed on each OS. - Next, the
support device 200 according to the present embodiment is realized, for example, by executing a program, using hardware (for example, a general-purpose personal computer) that follows a general-purpose architecture. -
FIG. 4 is a block diagram showing a hardware configuration example of thesupport device 200 that constitutes theabnormality detection system 1 according to the present embodiment. With reference toFIG. 4 , thesupport device 200 includes aprocessor 202 such as a CPU or an MPU, adrive 204, amain storage device 206, asecondary storage device 208, aUSB controller 212, alocal network controller 214, aninput unit 216, and adisplay unit 218. These components are connected via abus 220. - The
processor 202 realizes various processing as described below, by reading various programs stored in thesecondary storage device 208, deploying and executing the programs in themain storage device 206. - The
secondary storage device 208 is made up of, for example, an HDD (Hard Disk Drive), an SSD (Solid State Drive) or the like. Thesecondary storage device 208 typically stores various programs which includes a development program (not shown) for creating a user program executed by thesupport device 200, debugging the created program, defining a system configuration, setting various parameters, and the like, adata mining tool 250, and asetting tool 260. Thesecondary storage device 208 may store the OS and other necessary programs. - The
drive 204 is able to write data to thestorage medium 205 and read various data (user program, trace data, time series data, or the like) from thestorage medium 205. Thestorage medium 205 includes, for example, a storage medium 205 (for example, an optical storage medium such as a DVD (Digital Versatile Disc)) that temporarily stores a computer-readable program. The program or data stored therein is read from thememory card 116 or thestorage medium 205, and installed in an internal storage region such as thesecondary storage device 208. - Various programs executed by the
support device 200 may be installed via a computer-readable memory card 116 or astorage medium 205, or may be installed in the form of downloading from a server device or the like on the network. Further, in some cases, the function provided by thesupport device 200 according to the present embodiment may be realized in the form of utilizing a part of the module provided by the OS. - The
USB controller 212 controls the exchange of data with thecontrol device 100 via the USB connection. Thelocal network controller 214 controls the exchange of data with other devices via an arbitrary network. - The
input unit 216 is made up of a keyboard, a mouse, and the like, and accepts the user manipulations. Thedisplay unit 218 is made up of a display, various indicators, and the like, and outputs a processing result and the like from theprocessor 202. A printer may be connected to thesupport device 200. - Although
FIG. 4 shows a configuration example in which the necessary functions are provided by executing the program by theprocessor 202, some or all of the functions provided may be implemented using a dedicated hardware circuit (for example, an ASIC, an FPGA or the like). - Next, a software configuration example and a functional configuration example of the main devices constituting the
abnormality detection system 1 according to the present embodiment will be described. -
FIG. 5 is a block diagram showing a basic software configuration example of theabnormality detection system 1 according to the present embodiment. With reference toFIG. 5 , in theabnormality detection system 1, thecontrol device 100 executes the abnormality detection processing, based on various types of information provided by thesupport device 200. - The
control device 100 includes avariable management unit 160, afeature extraction unit 140, a learningmodel generation unit 142, a machinelearning processing unit 144, aresult determination unit 146, and anauthority management unit 130. - The
variable management unit 160 acquires a state value (input value) appearing in a control target such as a machine or a device for each predetermined control cycle, and updates the internal state value. Further, thevariable management unit 160 updates the command value (output value) calculated by the execution of the user program or the like for each control cycle. That is, thevariable management unit 160 executes at least a part of the processing related to the I/O refresh processing, and updates the input value acquired from the control target and the output value given to the control target for each control cycle. - In the
control device 100 according to the present embodiment, a form of referring in the form of "variables" is adopted for any of the state value (input value) acquired from the control target, the command value (output value) given to the control target, and the data or values (all included in "internal state values") used for the arithmetic processing in thecontrol device 100 or the state management of thecontrol device 100. Therefore, in the following description, the values available in thecontrol device 100 may be expressed as "variable values". Further, a set of internal state values indicating the state values generated in a control target such as a machine or a device is expressed as a "device variable". - The present invention is not restricted to the form of referring the value using the "variable", but is also applicable to a form of directly designating and referring a physical address of a memory for storing each value.
- The
feature extraction unit 140 calculates one or a plurality of feature amounts 150 from one or a plurality of state values acquired from the monitoring target. More specifically, thefeature extraction unit 140 calculates the one or the plurality of feature amounts 150 (for example, an average value, a maximum value, a minimum value, or the like over a predetermined time) periodically or for each event according to a predetermined processing, from the value (a temporal change of the unit interval) indicated by one or a plurality of device variables 162 (state values) of the specified target, according to the settinginformation 158 set by thesupport device 200. The unit interval used by thefeature extraction unit 140 to calculate thefeature amount 150 is also referred to as "frame" below. The unit interval (frame) is arbitrarily set depending on the operation of the monitoring target. - The machine
learning processing unit 144 calculates acertain score 154 which is a value indicating a possibility that any abnormality has occurred in the monitoring target, based on the one or the plurality of feature amounts 150 calculated by thefeature extraction unit 140, by referring to thelearning model 152. Typically, thelearning model 152 is provided by thelearning model generator 142. - As an example, the machine
learning processing unit 144 adopts a method of calculating a score corresponding to the input value, based on the degree of deviation of the input value with respect to a value group in a hyperspace, as an algorithm of the abnormality detection. As methods of abnormality detection based on the degree of deviation, a method of detecting abnormality based on the shortest distance from each point to the value group (k-nearest neighbours algorithm), a local outlier factor method that evaluates the distance including the cluster including the value group (LoF: local outlier factor), an iForest (isolation forest) method of using a score calculated from the path length, and the like are known. - When the
learning model 152 is made up of feature amounts at the time of normality, it is possible to determine that the greater the degree of deviation from the learning model 152 (that is, the score) is, the higher the possibility that any abnormality has occurred in the monitoring target is. On the other hand, when thelearning model 152 is made up of feature amounts at the time of abnormality, it is possible to determine that the smaller the degree of deviation from the learning model 152 (that is, the score) is, the higher the possibility that any abnormality has occurred in the monitoring target is. - The learning
model generation unit 142 generates thelearning model 152 according to the instruction from thesupport device 200. The learningmodel generation unit 142 may be provided in a part of thesupport device 200. In this case, thelearning model 152 itself is provided from thesupport device 200 to thecontrol device 100. More specifically, thelearning model 152 may be generated, by extracting necessary data, using thedata mining tool 250 of thesupport device 200. - The
result determination unit 146 generates adetermination result 170 indicating whether any abnormality has occurred in the monitoring target based on thescore 154 calculated by the machinelearning processing unit 144. Thedetermination condition 156 may be set by thesupport device 200. Typically, thedetermination condition 156 includes a threshold range which is set for thescore 154 and indicates that there is a high possibility that any abnormality has occurred in the monitoring target. - By adopting the aforementioned configuration, it is possible to detect any abnormality that may occur in any monitoring target included in the control target.
- The
authority management unit 130 provides a function of restricting an access to software modules, programs, and the like mounted on thecontrol device 100. Details of theauthority management unit 130 will be described later. - On the other hand, the
support device 200 sets the settinginformation 158 and thedetermination condition 156 for thecontrol device 100. More specifically, thesupport device 200 has asetting tool 260, and thesetting tool 260 is in charge of setting processing of various data to thecontrol device 100. - Next, the problems assumed by the
abnormality detection system 1 according to the present embodiment and the solving means thereof will be described. - As shown in
FIG. 5 described above, in theabnormality detection system 1 according to the present embodiment, thefeature extraction unit 140, the learningmodel generation unit 142, and the machinelearning processing unit 144 are mounted on thecontrol device 100 in relation to the abnormality detection processing. - For the processing unit related to abnormality detection processing, the change or confirmation of the definition contents by anyone other than a user who has received a predetermined authority is prohibited. The prohibition of such a manipulation is for maintaining the operation of the
abnormality detection system 1 at a constant state and protecting the operation state as know-how, and is managed by theauthority management unit 130. More specifically, theauthority management unit 130 associates with thesetting tool 260 of thesupport device 200 to thereby manage manipulations on thefeature extraction unit 140, the learningmodel generation unit 142, and the machinelearning processing unit 144 using a password or the like. -
FIG. 6 is a schematic diagram showing a range of operation restrictions which are set for the software configuration example shown inFIG. 5 . Referring toFIG. 6 , theauthority management unit 130 restricts the manipulations on thefeature extraction unit 140, the learningmodel generation unit 142, and the machinelearning processing unit 144. That is, theauthority management unit 130 restricts access to the programs for realizing thefeature extraction unit 140, the learningmodel generation unit 142, and the machinelearning processing unit 144. As a result, it is possible to conceal know-how such as definition contents which are set in thefeature extraction unit 140, the learningmodel generation unit 142, and the machinelearning processing unit 144. - On the other hand, it is also necessary to evaluate the validity of the abnormality detection processing (that is, whether it is properly executed). In this case, it is necessary to confirm various data (for example, the
feature amount 150 and the score 154) calculated or generated in the abnormality detection processing. When referring to such various data, it is easy to infer the definition contents in the abnormality detection processing, and there is also a possibility that the know-how cannot be sufficiently concealed. - Further, the
control device 100 may also be equipped with a function of collecting time series data by data logging or the like to evaluate whether the control calculation is properly executed. It is also possible to infer the definition contents in the abnormality detection processing, by analyzing the time series data of the internal state values which are collected using such a data logging function and held by thecontrol device 100. In such a case, there is also a possibility that the know-how may not be sufficiently concealed as described above. - As described above, there are two conflicting problems in terms of concealment of know-how and easiness of validation, and the
abnormality detection system 1 according to the present embodiment can solve these two problems. That is, theabnormality detection system 1 according to the present embodiment provides a configuration having merits to not only the software related to the abnormality detection processing, but also a provider of the know-how related to the abnormality detection processing (that is, a settlor of the definition contents) and a beneficiary of the abnormality detection processing. -
FIG. 7 is a block diagram showing a more detailed software configuration example of theabnormality detection system 1 according to the present embodiment. Referring toFIG. 7 , thecontrol device 100 has two types of databases for storing various data. Specifically, thecontrol device 100 includes a restricted database (hereinafter, also abbreviated as "restricted DB") 180 in which an access is restricted by theauthority management unit 130, and a public database (hereinafter, also abbreviated as "public DB") 190 in which an access is not restricted). - That is, in the
abnormality detection system 1 according to the present embodiment, the data related to the know-how of the abnormality detection processing is stored in the restrictedDB 180, and the data necessary for using the result of the abnormality detection processing is stored in thepublic DB 190. By implementing two types of databases having different roles in this way, it is possible to simultaneously solve two conflicting problems in terms of concealment of know-how and easiness of validation. - The restricted
DB 180 stores data related to know-how of the abnormality detection processing. That is, the restrictedDB 180 is a data storage unit that stores at least one of the data related to the processing in thefeature extraction unit 140 and the data related to the processing in the machinelearning processing unit 144. More specifically, the restrictedDB 180 stores the time information, the frame identification information, the feature amounts, the scores, and the like. This information is basically stored in the form of time series data. Further, the restrictedDB 180 may store the contents of the settinginformation 158 that is set from the support device 200 (what kind of feature amount is calculated from which variable). This information is stored as static information in a table format. -
FIG. 8 is a schematic diagram showing an example of data stored in the restrictedDB 180 of thecontrol device 100 shown inFIG. 7 . Thetime series data 182 shown inFIG. 8A and the settingdata 184 shown inFIG. 8B are stored in the restrictedDB 180. - The
time series data 182 shown inFIG. 8A includes data which are sequentially generated by executing thefeature extraction unit 140, the learningmodel generation unit 142, the machinelearning processing unit 144, theresult determination unit 146, and the like. More specifically, thetime series data 182 includes anindex 1821, atime stamp 1822, aframe ID 1823, afeature amount 1824, and ascore 1825. - The
index 1821 is information for specifying each record, and is a unique value that is arbitrarily given by thecontrol device 100. Typically, the index 1801 is incremented or decremented for each collection cycle. It is possible to determine presence or absence of lack of data, by using the value to be incremented or decremented. - The
time stamp 1822 is time information indicating the timing at which each record is generated. The time information is provided by a time counting means managed by thecontrol device 100. - The
frame ID 1823 is identification information for specifying the unit interval (frame) at which the data used for generating each record is collected. Typically, the values of device variables used to determine the frame are stored. - The
feature amount 1824 stores the value of thefeature amount 150 sequentially calculated by thefeature extraction unit 140. That is, the data related to the processing in thefeature extraction unit 140 stored in the restrictedDB 180 includes the one or the plurality of feature amounts 150 calculated by thefeature extraction unit 140. - The
score 1825 stores the value of thescore 154 sequentially calculated by the machinelearning processing unit 144. That is, the data related to the processing in thefeature extraction unit 140 stored in the restrictedDB 180 includes thescore 154 calculated by the machinelearning processing unit 144. - Further, the setting
data 184 shown inFIG. 8B describes the contents of the settinginformation 158 set for thefeature extraction unit 140 by thesupport device 200. More specifically, the settingdata 184 includes afeature amount ID 1841, adevice variable 1842, and afeature amount type 1843. - The
feature amount ID 1841 is identification information for specifying the feature amount calculated by thefeature extraction unit 140. The device variable 1842 stores information that identifies the device variable used for calculating the corresponding feature amount. Thefeature amount type 1843 stores information for specifying the calculating method of the corresponding feature amount. - As described above, the data related to the processing in the
feature extraction unit 140 stored in the restrictedDB 180 includes the settinginformation 158. - On the other hand, the
public DB 190 stores arbitrary data other than the data related to the know-how of abnormality detection processing. That is, thepublic DB 190 is a data storage unit that stores an arbitrary state value that can be referred to by thecontrol device 100. -
FIG. 9 is a schematic diagram showing an example of data stored in thepublic DB 190 of thecontrol device 100 shown inFIG. 7 . Thetime series data 192 shown inFIG. 9 is stored in thepublic DB 190. - Basically, the values updated for each control cycle (I/O refresh processing cycle) of one or a plurality of device variables 162 (state values) managed by the
variable management unit 160 are sequentially stored in thetime series data 192. More specifically, thetime series data 192 includes anindex 1921, atime stamp 1922, and adevice variable 1923. - The
index 1921 is information for specifying each record, and is a unique value arbitrarily given in thecontrol device 100. Typically, the index 1901 is incremented or decremented for each collection cycle. By using the value to be incremented or decremented, it is possible to determine presence or absence of lack of data. Moreover, the same value as theindex 1821 may be used for thetime series data 182 ofFIG. 8A , or a value set independently for each time series data may be used. - The
time stamp 1922 is time information indicating the timing at which each record is generated. The time information is provided by a time counting means managed by thecontrol device 100. - The device variable 1923 stores the values of one or a plurality of
device variables 162 which are arbitrarily set. - The data items shown in
FIGS. 8 and9 are examples, and data items other than the data items shown may be stored, or another data item may be stored in place of some data items. For example, thepublic DB 190 may further store thedetermination result 170 generated by theresult determination unit 146. - As described above, the data related to the know-how of abnormality detection processing is stored only in the restricted
DB 180, but is not stored in thepublic DB 190. On the other hand, the data necessary for using the result of the abnormality detection processing (basically, it is not directly related to the know-how of the abnormality detection processing) is stored in thepublic DB 190. - Next, an access method to the restricted
DB 180 will be described. - As described above, the access to the data stored in the restricted
DB 180 of thecontrol device 100 is restricted to a user who has received a predetermined authority. Further, it is preferable that the data read from the restrictedDB 180 of thecontrol device 100 is also securely transmitted. An implementation example for realizing the access restriction to the restrictedDB 180 and the secure transmission of read data will be described below. -
FIG. 10 is a block diagram showing an implementation example for restricting an access to the restrictedDB 180 in theabnormality detection system 1 according to the present embodiment. InFIG. 10 , processing of setting the authority for an access to thecontrol device 100 using thesetting tool 260 of thesupport device 200 and accessing thecontrol device 100 from theanalysis device 600 by the authorized user is assumed. - As a typical example, the
authority management unit 130 determines whether the authority to access the restrictedDB 180 is granted, based on the identification information (ID) and the password (Password). - With reference to
FIG. 10 , as a preliminary preparation, it is assumed that thesetting tool 260 of thesupport device 200 is prepared with a pair of theprivate key 262 and thepublic key 264. - First, the administrator user of the
abnormality detection system 1 manipulates thesetting tool 260 of thesupport device 200 to set identification information (ID) and the password (Password) for specifying a user who can access theauthority management unit 130 of the control device 100 ((1) setting). This setting content is stored in the authority setting table 266. - Subsequently, the administrator user of the
abnormality detection system 1 manipulates thesetting tool 260 of thesupport device 200 to set theprivate key 262 in the authority management unit 130 ((2) provision of private key), and set thepublic key 264 corresponding to theprivate key 262 in the analysis device 600 ((3) provision of public key). - By the aforementioned manipulation, processing such as authority setting for the
abnormality detection system 1 is completed. In this state, theauthority management unit 130 has aprivate key 262 corresponding to thepublic key 264 held by theanalysis device 600, which is an external device that accesses the restrictedDB 180. - After that, a case of accessing the data stored in the restricted
DB 180 of thecontrol device 100 from theanalysis device 600 is assumed. The user who has received the predetermined authority manipulates theanalysis device 600 and inputs the identification information (ID) and password (Password) given to the user. The input identification information (ID) and password (Password) are encrypted by thepublic key 264 stored in theanalysis device 600 and are transmitted to the control device 100 ((4) input ID + Password (encryption by public key)). - The
authority management unit 130 of thecontrol device 100 executes processing (authentication processing) of decrypting the identification information (ID) and the password (Password) encrypted by thepublic key 264 transmitted from theanalysis device 600 with theprivate key 262, and determining whether the authority to access the restrictedDB 180 is granted, with reference to the authority setting table 266 ((5) authentication). - When the
authority management unit 130 of thecontrol device 100 succeeds in the authentication processing, theauthority management unit 130 generates acommon key 268 used for transmission of data ((6) common key generation). Further, theauthority management unit 130 of thecontrol device 100 transmits the generatedcommon key 268 to the analysis device 600 ((7) common key transmission). That is, when theauthority management unit 130 determines that the authority to access the restrictedDB 180 is granted, theauthority management unit 130 transmits, to theanalysis device 600, thecommon key 268 for encrypting the data exchanged with theanalysis device 600. - At the time of transmission of the
common key 268, theauthority management unit 130 of thecontrol device 100 transmits thecommon key 268 to theanalysis device 600 after encryption using theprivate key 262. On the other hand, thecommon key 268 encrypted from theanalysis device 600 is decrypted by thepublic key 264 of the own device. - Finally, the data stored in the restricted
DB 180 is transmitted to theanalysis device 600 by using thecommon key 268 which is common between theauthority management unit 130 of thecontrol device 100 and the analysis device 600 ((8) data transmission (encryption due to common key)). More specifically, theencryption unit 132 of theauthority management unit 130 encrypts the data stored in the restrictedDB 180 using thecommon key 268, and then transmits the data to theanalysis device 600. Theanalysis device 600 decrypts the encrypted data using thecommon key 268. - The
public DB 190 can basically be accessed from any device connected to thecontrol device 100. In this way, the contents of thepublic DB 190 can be arbitrarily referred to by the user of thecontrol device 100, and meanwhile, the contents of the restrictedDB 180 can be referred only to the user to which the predetermined authority is granted. - By adopting such a configuration, it is possible to achieve requirements such as protection of know-how related to abnormality detection processing, evaluation of validity of abnormality detection processing, and verification when any abnormality has occurred.
- Further, by adopting an implementation example as shown in
FIG. 10 , any transmission protocol such as HTTP (hypertext transfer protocol) or FTP (file transfer protocol) can be used. - Although
FIG. 10 shows a configuration in which an access from theanalysis device 600 connected to the network is accepted for the restrictedDB 180 of thecontrol device 100, the present invention is not limited thereto, and only a user having a predetermined authority may take out the data via thememory card 116 that can be attached to thecontrol device 100. - The present embodiment as described above includes the following technical ideas.
- A control device (100) which controls a control target including:
- a feature extraction unit (140) which calculates one or a plurality of feature amounts (150) from one or a plurality of state values (164) acquired from a monitoring target; a processing unit (144) which calculates a score (154) that is a value indicating a possibility that any abnormality has occurred in the monitoring target based on the one or the plurality of feature amounts calculated by the feature extraction unit, with reference to a learning model (152);
- a determination unit (146) which generates a determination result (170) indicating whether any abnormality has occurred in the monitoring target, based on the score calculated by the processing unit;
- a first data storage unit (180) which stores at least one of data related to processing in the feature extraction unit and data related to processing in the processing unit;
- a second data storage unit (190) which stores an arbitrary state value capable of being referred to by the control device; and
- an authority management unit (130) which restricts access to the first data storage unit.
- The control device according to
configuration 1, in which the data related to the processing in the feature extraction unit includes the one or the plurality of feature amounts (150) calculated by the feature extraction unit. - The control device according to
configuration - The control device according to any one of
configurations 1 to 3, in which the data related to the processing in the processing unit includes the score (154) calculated by the processing unit. - The control device according to any one of
configurations 1 to 4, in which the authority management unit restricts the access to programs for realizing the feature extraction unit and the processing unit. - The control device according to any one of
configurations 1 to 5, in which the second data storage unit further stores the determination result (170) generated by the determination unit. - The control device according to any one of the
configurations 1 to 6, in which the authority management unit determines whether an authority to access the first data storage unit is granted based on identification information and a password (266). - The control device according to
configuration 7, in which the authority management unit has a private key (262) corresponding to a public key (264) held by an external device that accesses the first data storage unit, and
the authority management unit decrypts the identification information and the password encrypted by the public key transmitted from the external device with the private key, and then determines whether the authority to access the first data storage unit is granted. - The control device according to the
configuration 8, in which when the authority management unit determines that the authority to access the first data storage unit is granted, the authority management unit transmits, to the external device, a common key (268) for encrypting data exchanged with the external device. - In the abnormality detection system according to the present embodiment, it is possible to provide a mechanism that can appropriately protect the know-how related to the abnormality detection processing, and can facilitate ex-post analysis processing, by preparing two types of data storage units of the restricted
DB 180 in which an access is restricted and thepublic DB 190 which can be accessed arbitrarily. - Further, in the abnormality detection system according to the present embodiment, since it is possible to realize access restriction using the identification information and the password, and data protection using the public key, the private key, and the common key, a necessary security can be ensured.
- The embodiments disclosed this time are exemplary in all respects and are not restrictive. The scope of the present invention is indicated by the claims, not the aforementioned description, and is intended to include all modifications within the meaning and scope equivalent to the claims.
-
- 1
- Abnormality detection system
- 2
- First fieldbus
- 4
- Second fieldbus
- 6
- Local network
- 10
- Field equipment group
- 12
- Remote I/O device
- 14
- Relay group
- 16, 124
- I/O unit
- 18
- Image sensor
- 20
- Camera
- 22
- Servo driver
- 24
- Servo motor
- 100
- Control device
- 102, 202
- Processor
- 104
- Chipset
- 106, 206
- Main storage device
- 108, 208
- secondary storage device
- 110, 214
- Local network controller
- 112, 212
- USB controller
- 114
- Memory card interface
- 116
- Memory card
- 118, 120
- Fieldbus controller
- 122
- Internal bus controller
- 126
- System program
- 130
- Authority management unit
- 132
- Encryption unit
- 140
- Feature extraction unit
- 142
- Learning model generation unit
- 144
- Machine learning processing unit
- 146
- Result determination unit
- 150, 1824
- Feature amount
- 152
- Learning model
- 154, 1825
- Score
- 156
- Determination condition
- 158
- Setting information
- 160
- Variable management unit
- 162, 1842, 1923
- Device variable
- 164
- State value
- 170
- Determination result
- 180
- Restricted DB
- 182, 192
- Time series data
- 184
- Setting data
- 190
- Public DB
- 200
- Support device
- 204
- Drive
- 205
- Storage medium
- 216
- Input unit
- 218
- Display unit
- 220
- Bus
- 250
- Data mining tool
- 260
- Setting tool
- 262
- Private key
- 264
- Public key
- 266
- Authority setting table
- 268
- Common key
- 300
- Upper server
- 400
- Display device
- 600
- Analysis device
- 1801, 1821, 1901, 1921
- Index
- 1822, 1922
- Time stamp
- 1823
- Frame ID
- 1841
- Feature amount ID
- 1843
- Feature amount type
Claims (9)
- A control device which controls a control target, comprising:a feature extraction unit which calculates one or a plurality of feature amounts from one or a plurality of state values acquired from a monitoring target;a processing unit which calculates a score that is a value indicating a possibility that any abnormality has occurred in the monitoring target, based on the one or the plurality of feature amounts calculated by the feature extraction unit, with reference to a learning model;a determination unit which generates a determination result indicating whether any abnormality has occurred in the monitoring target, based on the score calculated by the processing unit;a first data storage unit which stores at least one of data related to processing in the feature extraction unit and data related to processing in the processing unit;a second data storage unit which stores an arbitrary state value capable of being referred to by the control device; andan authority management unit which restricts access to the first data storage unit.
- The control device according to claim 1, wherein the data related to the processing in the feature extraction unit includes the one or the plurality of feature amounts calculated by the feature extraction unit.
- The control device according to claim 1 or 2, wherein the feature extraction unit calculates the one or plurality of feature amounts from one or a plurality of state values specified by setting information from outside, and
the data related to the processing in the feature extraction unit includes the setting information. - The control device according to any one of claims 1 to 3, wherein the data related to the processing in the processing unit includes the score calculated by the processing unit.
- The control device according to any one of claims 1 to 4, wherein the authority management unit restricts the access to programs for realizing the feature extraction unit and the processing unit.
- The control device according to any one of claims 1 to 5, wherein the second data storage unit further stores the determination result generated by the determination unit.
- The control device according to any one of claims 1 to 6, wherein the authority management unit determines whether an authority to access the first data storage unit is granted based on identification information and a password.
- The control device according to claim 7, wherein the authority management unit has a private key corresponding to a public key held by an external device that accesses the first data storage unit, and
the authority management unit decrypts the identification information and the password encrypted by the public key transmitted from the external device with the private key, and then determines whether the authority to access the first data storage unit is granted. - The control device according to claim 8, wherein when the authority management unit determines that the authority to access the first data storage unit is granted, the authority management unit transmits, to the external device, a common key for encrypting data exchanged with the external device.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018199726A JP7087908B2 (en) | 2018-10-24 | 2018-10-24 | Control device |
PCT/JP2019/039605 WO2020085078A1 (en) | 2018-10-24 | 2019-10-08 | Control device |
Publications (2)
Publication Number | Publication Date |
---|---|
EP3872667A1 true EP3872667A1 (en) | 2021-09-01 |
EP3872667A4 EP3872667A4 (en) | 2022-07-13 |
Family
ID=70331191
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP19874884.0A Pending EP3872667A4 (en) | 2018-10-24 | 2019-10-08 | Control device |
Country Status (4)
Country | Link |
---|---|
US (1) | US11783063B2 (en) |
EP (1) | EP3872667A4 (en) |
JP (1) | JP7087908B2 (en) |
WO (1) | WO2020085078A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024025537A1 (en) * | 2022-07-28 | 2024-02-01 | Siemens Industry Software Inc. | Method and system for anomaly detection |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022067778A (en) * | 2020-10-21 | 2022-05-09 | 株式会社タツノ | Gas filling system |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000059357A (en) | 1998-08-07 | 2000-02-25 | Nippon Telegr & Teleph Corp <Ntt> | Closed area group communication system, management server system, communication terminal and their program storage medium |
JP3718832B2 (en) | 2000-05-31 | 2005-11-24 | 松下電器産業株式会社 | Image output apparatus and image output control method |
JP2003244124A (en) | 2002-02-15 | 2003-08-29 | Promenade:Kk | Security management system |
JP2005154688A (en) | 2003-11-28 | 2005-06-16 | Hitachi Chem Co Ltd | Thermosetting resin composition |
JP2007280348A (en) | 2006-03-13 | 2007-10-25 | Fuji Electric Fa Components & Systems Co Ltd | Programming device of programmable controller |
TWI389536B (en) * | 2008-11-07 | 2013-03-11 | Ind Tech Res Inst | Access control system and method based on hierarchical key, and authentication key exchange thereof |
US8898469B2 (en) * | 2010-02-05 | 2014-11-25 | Motorola Mobility Llc | Software feature authorization through delegated agents |
JP5996872B2 (en) * | 2012-01-11 | 2016-09-21 | 株式会社東海理化電機製作所 | Lending system |
US10914608B2 (en) * | 2012-10-12 | 2021-02-09 | Nec Corporation | Data analytic engine towards the self-management of complex physical systems |
US10185934B2 (en) * | 2013-07-09 | 2019-01-22 | Qualcomm Incorporated | Real-time context aware recommendation engine based on a user internet of things environment |
JP2015184849A (en) | 2014-03-24 | 2015-10-22 | 株式会社日立産機システム | programmable controller |
US10681060B2 (en) | 2015-05-05 | 2020-06-09 | Balabit S.A. | Computer-implemented method for determining computer system security threats, security operations center system and computer program product |
JP2017162239A (en) * | 2016-03-10 | 2017-09-14 | 東芝メモリ株式会社 | Memory system |
US9818126B1 (en) * | 2016-04-20 | 2017-11-14 | Deep Labs Inc. | Systems and methods for sensor data analysis through machine learning |
WO2018033953A1 (en) * | 2016-08-15 | 2018-02-22 | 株式会社オプティム | IoT DEVICE USER INTERFACE DISPLAY SYSTEM, IoT DEVICE USER INTERFACE DISPLAY METHOD, AND PROGRAM |
JP7051076B2 (en) | 2016-08-26 | 2022-04-11 | 株式会社根本杏林堂 | Chemical injection device |
JP6364557B1 (en) | 2016-11-09 | 2018-07-25 | アライドテレシスホールディングス株式会社 | IoT data brokerage system |
JP6919186B2 (en) | 2016-12-14 | 2021-08-18 | オムロン株式会社 | Control system, control program and control method |
WO2018110259A1 (en) * | 2016-12-14 | 2018-06-21 | オムロン株式会社 | Control device, control program, and control method |
JP6903976B2 (en) | 2017-03-22 | 2021-07-14 | オムロン株式会社 | Control system |
US10695907B2 (en) * | 2017-09-29 | 2020-06-30 | Intel Corporation | Methods and apparatus for monitoring robot health in manufacturing environments |
JP7007243B2 (en) * | 2018-07-04 | 2022-01-24 | 株式会社日立製作所 | Anomaly detection system |
-
2018
- 2018-10-24 JP JP2018199726A patent/JP7087908B2/en active Active
-
2019
- 2019-10-08 EP EP19874884.0A patent/EP3872667A4/en active Pending
- 2019-10-08 US US17/279,086 patent/US11783063B2/en active Active
- 2019-10-08 WO PCT/JP2019/039605 patent/WO2020085078A1/en unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024025537A1 (en) * | 2022-07-28 | 2024-02-01 | Siemens Industry Software Inc. | Method and system for anomaly detection |
Also Published As
Publication number | Publication date |
---|---|
JP2020067793A (en) | 2020-04-30 |
US20210390194A1 (en) | 2021-12-16 |
WO2020085078A1 (en) | 2020-04-30 |
JP7087908B2 (en) | 2022-06-21 |
US11783063B2 (en) | 2023-10-10 |
CN112654988A (en) | 2021-04-13 |
EP3872667A4 (en) | 2022-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10044749B2 (en) | System and method for cyber-physical security | |
US20180004949A1 (en) | Method For Updating Process Objects In An Engineering System | |
CN102156840B (en) | Controller and managing device thereof | |
EP3036928B1 (en) | Mobile device authentication | |
EP4022405B1 (en) | Systems and methods for enhancing data provenance by logging kernel-level events | |
US11783063B2 (en) | Control device | |
CN115310078B (en) | Application method of auditing system on industrial production line | |
WO2021034274A1 (en) | Blockchain for operational data security in industrial control systems | |
CN104428782A (en) | Programmable logic controller | |
US20220085982A1 (en) | Safety system and maintenance method | |
CN112654988B (en) | Control device | |
EP3830658A1 (en) | Data structure product and product kit | |
US20190268144A1 (en) | Data processing method, control system, and control device | |
EP3920063B1 (en) | Safety system and maintenance method | |
US20220317649A1 (en) | Control system, control device, and management method | |
US20180129793A1 (en) | Precompile and encrypt industrial intellectual property | |
US20230093865A1 (en) | Control system, relay device, and access management program | |
EP4307141A1 (en) | Control system and control method therefor | |
JP2020140312A (en) | Control apparatus, management program and control system | |
WO2020058192A1 (en) | Sensor data assembly and manufacturing device | |
ur Rehman et al. | A framework to handle big data for cyber-physical systems | |
US20240142952A1 (en) | Control system and method for controlling same | |
EP3961529A1 (en) | Method, device and system for managing asset data in an industrial plant | |
EP4152192A1 (en) | On-chassis backplane intrusion detection system and continuous threat detection enablement platform | |
WO2020195638A1 (en) | Controller system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20210316 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
DAV | Request for validation of the european patent (deleted) | ||
DAX | Request for extension of the european patent (deleted) | ||
A4 | Supplementary search report drawn up and despatched |
Effective date: 20220610 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06N 20/00 20190101ALI20220603BHEP Ipc: G06F 21/14 20130101ALI20220603BHEP Ipc: G06F 21/12 20130101ALI20220603BHEP Ipc: G06F 21/60 20130101AFI20220603BHEP |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G05B 23/02 20060101ALI20240229BHEP Ipc: G06N 20/00 20190101ALI20240229BHEP Ipc: G06F 21/14 20130101ALI20240229BHEP Ipc: G06F 21/12 20130101ALI20240229BHEP Ipc: G06F 21/60 20130101AFI20240229BHEP |
|
INTG | Intention to grant announced |
Effective date: 20240320 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |