Data processing apparatus, data processing system, and data processing method
The described system addresses real-time data processing challenges by using edge terminals and data processing devices with pre-configured formulas to distribute and manage data processing efficiently, ensuring timely data handling for applications like autonomous driving.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- MITSUBISHI ELECTRIC CORP
- Filing Date
- 2025-01-08
- Publication Date
- 2026-07-16
AI Technical Summary
Conventional distributed database systems struggle with real-time data processing due to their inability to efficiently manage and process data in a timely manner, particularly in applications like autonomous driving where immediate data processing is required.
A data processing apparatus and method that includes an edge terminal and a data processing device with a database system, where the edge terminal collects data and performs initial processing, and the data processing device performs further processing using pre-configured calculation formulas, enabling real-time data handling by distributing the processing load across multiple units.
Enables smooth and efficient real-time data processing by optimizing data handling and reducing processing times through distributed data processing across edge terminals and devices, ensuring timely data management for applications like autonomous driving.
Smart Images

Figure JP2025000256_16072026_PF_FP_ABST
Abstract
Description
Data processing apparatus, data processing system, and data processing method
[0001] The present disclosure relates to a data processing apparatus, a data processing system, and a data processing method.
[0002] A conventional distributed database system includes a plurality of storage devices and a selection device. The storage devices form groups for each type of data to be stored and store the data in a distributed manner. The selection device communicates with a terminal device and equipment through a server. Data acquired by the server from the equipment is stored in the storage devices through the selection device. When the terminal device requests data stored in the storage devices, the server reads out the required data from the storage devices through the selection device and provides it to the terminal device (see, for example, Patent Document 1).
[0003] Japanese Patent Application Laid-Open No. 2015-049542
[0004] In recent years, in fields such as the autonomous driving of automobiles, it has been required to perform data processing in real time. However, the distributed database system disclosed in Patent Document 1 has a problem that it cannot smoothly perform real-time data processing because it provides data to the terminal device as it is.
[0005] The present disclosure has been made in view of the above, and an object thereof is to obtain a data processing apparatus, a data processing system, and a data processing method capable of smoothly performing real-time data processing.
[0006] In order to solve the above-described problems and achieve the object, a data processing apparatus according to the present disclosure includes a database that stores data collected by an edge terminal that collects data of equipment constituting a mechanical system and executes preset data processing. The data processing apparatus has a calculation processing unit that performs calculation processing according to a preset calculation formula, and includes a data processing unit that executes data processing for generating data used for data processing executed by the edge terminal by performing calculation processing on the data read from the database.
[0007] Furthermore, the data processing system relating to this disclosure includes an edge terminal that collects data from equipment constituting a mechanical system, and a data processing device equipped with a database that stores the equipment data collected by the edge terminal. Each of the edge terminal and the data processing device includes a data processing unit that performs calculation processing according to a pre-set calculation formula. The data processing unit of the data processing device performs calculation processing on data read from the database, and the data processing unit of the edge terminal performs calculation processing on data acquired from the data processing device.
[0008] Furthermore, the data processing method relating to this disclosure includes the steps of: a data processing device reading data of equipment stored in a database in response to a request from an edge terminal that collects data of equipment constituting a mechanical system and performs pre-configured data processing; and a first data processing step in which the data processing device generates data to be used for data processing performed by the edge terminal using a pre-configured calculation formula on the equipment data read from the database. The data processing method also includes the steps of: the data processing device returning the result of the first data processing to the edge terminal that requested the first data processing; and the edge terminal performing a second data processing, which is data processing using a calculation formula different from that of the data processing device, using the result of the first data processing obtained from the data processing device.
[0009] The data processing device, data processing system, and data processing method related to this disclosure have the effect of enabling smooth real-time data processing.
[0010] A figure showing the configuration of the data processing system according to Embodiment 1. A figure showing the configuration of the edge terminal of the data processing system according to Embodiment 1. A figure showing the configuration of the data processing device of the data processing system according to Embodiment 1. A figure showing the configuration of the database section of the data processing system according to Embodiment 1. A figure showing an example of data stored in the database of the data processing system according to Embodiment 1. A figure showing the configuration of the higher-level information processing device of the data processing system according to Embodiment 1. A flowchart showing the operation flow when the data processing unit of the data processing system according to Embodiment 1 is used. A figure showing an example of the operation sequence when reading data in the data processing system according to Embodiment 1. A figure schematically showing an example of the operation when reading data in the data processing system according to Embodiment 1. A figure showing the configuration of the data processing system according to Embodiment 2. A figure showing an example of the hardware configuration that realizes the data processing unit provided by the edge terminal, data processing device, and higher-level information processing device of the data processing system according to Embodiment 1 and Embodiment 2.
[0011] The data processing device, data processing system, and data processing method according to the embodiment will be described in detail below with reference to the drawings.
[0012] Embodiment 1. Figure 1 is a diagram showing the configuration of a data processing system according to Embodiment 1. The data processing system 100 is a system that collects and analyzes information from a plurality of pieces of equipment 90 that constitute the machine system 200. Here, each of the pieces of equipment 90 is a machine tool, and the machine system 200 is a group of manufacturing machines called a production line, in which the plurality of pieces of equipment 90 are arranged in a line.
[0013] The data processing system 100 comprises at least one edge terminal 10, a data processing device 20 that is communicatively connected to the edge terminal 10, and a higher-level information processing device 30 that is communicatively connected to at least some of the edge terminals 10. Embodiment 1 provides an example of a data processing system 100 equipped with three edge terminals 10. The edge terminals 10 monitor the equipment 90 that constitute the machine system 200 and collect data.
[0014] The edge terminal 10 is an information gathering device that collects information from the equipment 90 that constitute the production line, and a terminal device in which the user, the worker, inputs work status. When the edge terminal 10 is an information gathering device, it collects information from sensors installed on the equipment 90 that constitute the production line, for example. An example of an information gathering device is a programmable logic controller, but it may be a different type of device than those exemplified. An example of a terminal device in which the worker inputs work status is a smartphone terminal, a tablet terminal, a notebook computer terminal, and a desktop computer terminal, but it may be a different type of device than those exemplified.
[0015] Figure 2 shows the configuration of an edge terminal of a data processing system according to Embodiment 1. The edge terminal 10 includes a communication unit 11 that communicates with the data processing device 20 and the higher-level information processing device 30, a data acquisition unit 12 that acquires data from the equipment 90, a data processing unit 13 that processes the data received from the data processing device 20, an input unit 14 which is an input device that accepts user operations, an output unit 15 that displays information, and a control unit 16 that controls the operation of each unit. The data processing unit 13 includes a plurality of calculation processing units 131 that perform data processing using data calculation formulas. Each calculation processing unit 131 has a different data calculation formula.
[0016] Figure 3 is a diagram showing the configuration of the data processing device of the data processing system according to Embodiment 1. The data processing device 20 includes a communication unit 21 that communicates with the edge terminal 10, a database unit 22 that stores data collected from the edge terminal 10, a real-time operation system (OS) unit 23 that processes requests from the edge terminal 10 in real time, and a data processing unit 24 that performs data processing. The real-time operation system unit 23 controls each unit by managing resources in order to process requests from the edge terminal 10 in real time. "Processing in real time" here means responding to a request and completing the processing immediately within a response period predetermined for each edge terminal 10. Generally, in the control of human-machine interfaces such as graphical user interfaces, the response period is set on the order of seconds, in the control of equipment such as motors and switches, the response period is set on the order of milliseconds, and in the control of devices inside equipment, the response period is set on the order of microseconds. Furthermore, in fields such as autonomous driving of automobiles, processing is required to be completed within a time equivalent to or less than the processing speed of the human brain, which is 30 ms. Therefore, the response period is generally set to 30 ms or less. Although several examples of response periods are given here, the pre-set response period will differ depending on the content of the data processing. The data processing unit 24 is equipped with multiple calculation processing units 241 that perform data processing using data calculation formulas. Each calculation processing unit 241 is equipped with a different data calculation formula. The real-time operation system unit 23 manages the priority and response period of each edge terminal 10 and the priority and response period of the equipment 90. When tasks overlap, the real-time operation system unit 23 ensures real-time performance by prioritizing tasks related to the edge terminal 10 and equipment 90 with a higher priority at that time, and tasks related to the edge terminal 10 and equipment 90 with a shorter response period.
[0017] Figure 4 is a diagram showing the configuration of the database unit of the data processing system according to Embodiment 1. The database unit 22 comprises a plurality of databases 221 and a master management unit 222 that manages each database 221. In Embodiment 1, the databases 221 provided by the database unit 22 are assumed to be three: an operating time database 221a, a troubleshooting database 221b, and a traceability database 221c. Each of the plurality of databases 221 stores data of a different data type for each database 221. The operating time database 221a stores data indicating the operating status of the production line equipped with equipment 90. The troubleshooting database 221b stores data regarding the status of troubles that occurred on the production line. The traceability database 221c stores data necessary for tracking manufactured products.
[0018] By storing data of the same type in each database 221, the data stored in each database 221 is standardized and simplified. In other words, each database 221 stores data of the same type and length.
[0019] Here, "same type of data" can be determined based on, for example, the identity of at least one of the categories and data formats. Examples of categories include operating time information showing the operating status of equipment, troubleshooting information showing the nature of the trouble and the response to it, and traceability information showing the manufacturing process of a product. Examples of data formats include numerical data that constitutes operating time information, text data that constitutes troubleshooting information, and text and numerical data that constitutes traceability information. If the information includes images and audio, the data formats of the images and audio can also be used to determine the type of data. Furthermore, "same data length" means that the data itself has the same data length, or that the data length of the frame storing the data is the same.
[0020] Furthermore, the database 221 is not limited to storing data of the same type and data length; it may also store data that is the same in at least one of the following ways: type or data length. By unifying the data structure targeted in each process, such as the calculation formulas of the data processing units 13 and 24, the data processing system 100 can more easily ensure real-time data processing.
[0021] Furthermore, it is not limited to storing data of the same type or the same data length in the database 221; data may also be stored in the database 221 in a manner consistent with the processing content of the data processing units 13 and 24. By unifying the data structure in each process of the data processing units 13 and 24, for example, if the majority of data processing units 13 and 24 handle only numerical data, but there are a few data processing units 13 and 24 that handle text data, it becomes easier to handle data processing in the data processing units 13 and 24 that handle text data.
[0022] Figure 5 shows an example of data stored in the database of the data processing system according to Embodiment 1. The data stored in the operating time database 221a has columns for production line name, model name, work start time, and work end time. The data stored in the troubleshooting database 221b has columns for production line name, model name, trouble name, trouble occurrence time, and trouble recovery start time. The data stored in the traceability database 221c has columns for production line name, model name, material lot, specification value, and pallet number. In Figure 5, "Model a (a1)" in the model name column indicates that it is the first process of work for model a. The same applies to "Model a (a2)", "Model a (a3)", "Model b (b1)", "Model b (b2)", "Model c (c1)", "Model c (c2)", and "Model c (c3)", indicating which model and which process of work it is. In the example shown in Figure 5, for model a and model c, three processes are performed on the workpiece, and for model b, two processes are performed on the workpiece.
[0023] Each database 221 stores unprocessed data, or so-called raw data, collected by the edge terminal 10. By storing raw data in each database 221, data processing in the data processing unit 24 is unnecessary when the data collected by the edge terminal 10 is stored in each database 221. Furthermore, since each database 221 stores data of the same length, the master management unit 222 does not need to change its processing according to the data length of the data to be stored in the database 221. In addition, the master management unit 222 can uniquely determine which database 221 to store the data in based on the data type, thereby reducing the processing load on the master management unit 222 when storing data. Due to these factors, the data processing device 20 can store data in the database 221 in a shorter time compared to when processed data is stored in the database 221.
[0024] Unprocessed data refers to data that can be directly obtained from sensors or equipment, such as current, voltage, temperature, and time. Here, unprocessed data does not simply mean data that has not been processed, but rather data that becomes the processing unit in data processing units 13 and 24, in other words, the parameter value in the data calculation formula. Furthermore, unprocessed data is stored in database 221 according to the columns of database 221 without being processed after being obtained from an external source. When data processing units 13 and 24 are configured to directly utilize raw data, there is no need to process the data in order to store it, nor is there any need to process the data in order to use the stored data. For this reason, by storing raw data in each database 221, it is easier to ensure real-time performance for data processing compared to when processed data is stored in each database 221. When data processing units 13 and 24 are configured to utilize raw data, real-time performance can be further enhanced by handling raw data.
[0025] In this example, we have given a configuration in which the uptime database 221a, troubleshooting database 221b, and traceability database 221c exist separately, but it is also possible to have multiple tables in a single database 221. That is, the uptime database 221a, troubleshooting database 221b, and traceability database 221c may be constructed in a single database 221.
[0026] The columns of data stored in database 221 are defined as parameters that constitute the data calculation formulas of the calculation processing unit 241 of data processing device 20. Therefore, the data processing unit 24 of data processing device 20 can directly apply the field data read from database 221 to the data calculation formulas to perform data processing. Consequently, data processing device 20 does not need to perform any processing to create the values of the parameters that constitute the data calculation formulas before performing data processing using the data calculation formulas.
[0027] Figure 6 shows the configuration of a higher-level information processing device of the data processing system according to Embodiment 1. The higher-level information processing device 30 includes a communication unit 31 that communicates with the edge terminal 10, a data processing unit 32 that processes data received from the edge terminal 10, an input unit 33 which is an input device that accepts user operations, an output unit 34 that displays information, and a control unit 35 that controls the operation of each unit. The data processing unit 32 includes a plurality of calculation processing units 321 that perform data processing using data calculation formulas. Each calculation processing unit 321 has a different data calculation formula.
[0028] If the calculation processing units 131, 241, and 321 have the results of data processing by other data processing units 13, 24, and 32 included in the parameters of the calculation formula, the data processing units 13, 24, and 32 to which the data processing results should be requested are pre-configured. Therefore, when the calculation processing units 131, 241, and 321 have the results of data processing by other data processing units 13, 24, and 32 included in the parameters of the calculation formula, the data processing units 13, 24, and 32 request the pre-configured data processing units 13, 24, and 32 to send the data processing results.
[0029] Figure 7 is a flowchart showing the operation flow of the data processing unit of the data processing system according to Embodiment 1 when data is used. The data processing unit 13 of the edge terminal 10, the data processing unit 24 of the data processing device 20, and the data processing unit 32 of the higher-level information processing device 30 each perform the operations shown in Figure 7 when data is used.
[0030] In step S1, data processing units 13, 24, and 32 receive data processing requests. The data processing unit 32 of the higher-level information processing device 30 receives data processing requests through user input operations to the input unit 33. The data processing unit 13 of the edge terminal 10 receives data processing requests through user input operations to the input unit 14 or by receiving data processing requests from the data processing unit 32 of the higher-level information processing device 30. The data processing unit 24 of the data processing device 20 receives data processing requests by receiving data processing requests transmitted from the data processing unit 13 of the edge terminal 10.
[0031] In step S2, the data processing units 13, 24, and 32 determine whether it is necessary to use the results of data processing performed by other data processing units 13, 24, and 32 when executing the data processing requested. If it is necessary to use the results of data processing performed by other data processing units 13, 24, and 32 when executing the data processing requested, the result in step S2 is Yes, and the process proceeds to step S3. If it is not necessary to use the results of data processing performed by other data processing units 13, 24, and 32 when executing the data processing requested, the result in step S2 is No, and the process proceeds to step S7.
[0032] In step S3, the data processing units 13, 24, and 32 request the transmission of the results of the data processing necessary to execute the data processing that they have received a request for, thereby requesting the other data processing units 13, 24, and 32 to perform data processing.
[0033] In step S4, the data processing units 13, 24, and 32 determine whether or not they have received the results of the data processing requested by the other data processing units 13, 24, and 32. If they have not received the results of the data processing requested by the other data processing units 13, 24, and 32, the result in step S4 is No, and step S4 is repeated. If they have received the results of the data processing requested by the other data processing units 13, 24, and 32, the result in step S4 is Yes, and the process proceeds to step S5.
[0034] In step S5, data processing units 13, 24, and 32 execute the data processing requested. For example, data processing unit 24 of data processing unit 20 generates data to be used by the edge terminal 10 for data processing to be executed by data processing unit 13 by performing calculations on the data read from database 221. If the results of data processing performed by other data processing units 13, 24, and 32 are to be passed directly to the requesting data processing unit 13, 24, and 32, then data processing units 13, 24, and 32 do nothing in step S5. In step S6, data processing units 13, 24, and 32 send the results of the data processing to the data processing requestor and terminate the process.
[0035] In step S7, the data processing units 13, 24, and 32 determine whether it is necessary to retrieve data from the database 221 in order to execute the data processing requested. If it is necessary to retrieve data from the database 221 in order to execute the data processing requested, the result in step S7 is Yes, and the process proceeds to step S8. If it is not necessary to retrieve data from the database 221 in order to execute the data processing requested, the result in step S7 is No, and the process proceeds to step S5. Note that only the data processing unit 24 of the data processing device 20 has the potential to respond Yes in step S7; the data processing unit 13 of the edge terminal 10 and the data processing unit 32 of the higher-level information processing device 30 will respond No in step S7.
[0036] In step S8, the data processing unit 24 requests the database unit 22 to read data from the database 221 and retrieves the data from the database 221. After step S8, the process proceeds to step S5.
[0037] Figure 8 shows an example of the operation sequence when reading data in the data processing system according to Embodiment 1. In sequence A1, the higher-level information processing device 30 receives a data processing request from the user. In sequence A2, the data processing device 32, which determines that the results of data processing by another data processing device 13 are necessary to execute the requested data processing, requests the other data processing device 13 to perform the data processing.
[0038] In sequence B1, the edge terminal 10, having received a data processing request from the higher-level information processing device 30, accepts the data processing request. In sequence B3, described later, the edge terminal 10 executes the data processing requested by the higher-level information processing device 30 as a pre-configured data processing. In sequence B2, the data processing device 13, having determined that the results of data processing from another data processing device 24 are necessary to execute the requested data processing, requests the other data processing device 24 to perform the data processing.
[0039] In sequence C1, the data processing unit 24 of the data processing device 20, upon receiving a data processing request from the edge terminal 10, accepts the data processing request. In sequence C2, the data processing unit 24 of the data processing device 20 requests the database unit 22 to read data from the database 221, and retrieves the data from the database 221.
[0040] In sequence C3, the data processing unit 24 of the data processing device 20 executes the data processing for which a request has been received, using the data acquired from the database 221. That is, in the data processing unit 24 of the data processing device 20, by performing a calculation process on the data read from the database 221, data to be used for the data processing executed by the edge terminal 10 in the data processing unit 13 is generated. In sequence C4, the data processing unit 24 of the data processing device 20 returns the result of the data processing for which a request has been received to the requester. Since the data processing device 20 is a device for which data processing has been requested from the edge terminal 10, the data processing unit 24 of the data processing device 20 passes the result of the data processing to the communication unit 21 and causes it to be transmitted to the data processing unit 13 of the edge terminal 10 which is the requester.
[0041] In sequence B3, the data processing unit 13 of the edge terminal 10 executes the data processing for which a request has been received, using the result of the data processing of the data processing unit 24 of the data processing device 20. In sequence B4, the data processing unit 13 of the edge terminal 10 returns the result of the data processing for which a request has been received to the requester. Since the edge terminal 10 is a device for which data processing has been requested from the upper information processing device 30, the data processing unit 13 of the edge terminal 10 passes the result of the data processing to the communication unit 11 and causes it to be transmitted to the data processing unit 32 of the upper information processing device 30 which is the requester.
[0042] In sequence A3, the data processing unit 32 of the upper information processing device 30 executes the data processing for which a request has been received, using the result of the data processing of the data processing unit 13 of the edge terminal 10. In sequence A4, the data processing unit 32 of the upper information processing device 30 returns the result of the data processing for which a request has been received to the requester. Since the upper information processing device 30 is a device that has received a request for data processing by a user operation, the data processing unit 32 of the upper information processing device 30 passes the result of the data processing to the output unit 34 and causes it to be output.
[0043] Here, data processing in the data processing device 20 is distinguished as the first data processing, data processing in the edge terminal 10 as the second data processing, and data processing in the higher-level information processing device 30 as the third data processing. In the data processing system 100 according to Embodiment 1, in response to a request from the edge terminal 10, which monitors the equipment 90 constituting the machine system 200 and collects data, the data processing device 20 reads data stored in the database 221. The data processing device 20 then performs the first data processing on the data read from the database 221 using a calculation process based on a pre-set calculation formula. The data processing device 20 then returns the result of the first data processing to the edge terminal 10, which requested the first data processing, and the edge terminal 10 uses the result of the first data processing obtained from the data processing device 20 to perform the second data processing using a calculation process based on a different calculation formula than that of the data processing device 20. Furthermore, the edge terminal 10 returns the result of the second data processing to the higher-level information processing device 30, which is the source of the second data processing request. The higher-level information processing device 30 then uses the result of the second data processing obtained from the edge terminal 10 to perform a third data processing using a calculation formula different from that of the edge terminal 10.
[0044] Figure 9 is a schematic diagram showing an example of the operation of the data processing system according to Embodiment 1 when reading data. Here, we take data processing that calculates the cumulative tolerance by calculating the sum of squares and root of squares as an example. If data a1, data a2, and data a3 represent operating time, and data b1, data b2, and data b3 represent the frequency of defect occurrence, then the frequency of defect occurrence in the total operating time of data a1 and data a2 is expressed as {(data b1 + data b2) / (data a1 + data a2)}. Also, the frequency of defect occurrence in the total operating time of data a1 and data a3 is expressed as {(data b1 + data b3) / (data a1 + data a3)}. Furthermore, the cumulative tolerance between the frequency of defect occurrence in the total operating time of data a1 and data a2 and the frequency of defect occurrence in the total operating time of data a1 and data a3 is √[{(data b1 + data b2) / (data a1 + data a2)}2 +{(data b1 + data b3) / (data a1 + data a3)} 2 is represented as. In the calculation processing unit 321 of the upper information processing device 30, √[{(data b1 + data b2) / (data a1 + data a2)} 2 +{(data b1 + data b3) / (data a1 + data a3)} 2 When performing data processing, the data processing unit 32 requests the data processing unit 13 of the edge terminal 10 to transmit {(data b1 + data b2) / (data a1 + data a2)} and {(data b1 + data b3) / (data a1 + data a3)}.
[0045] When the data processing unit 13 of the edge terminal 10 returns {(data b1 + data b2) / (data a1 + data a2)} and {(data b1 + data b3) / (data a1 + data a3)} requested by the data processing unit 32 of the upper information processing device 30 to the data processing unit 32, in the calculation processing unit 131, it is necessary to perform data processing of {(data b1 + data b2) / (data a1 + data a2)} and data processing of {(data b1 + data b3) / (data a1 + data a3)}. For this reason, the data processing unit 13 requests the data processing unit 24 of the data processing device 20 to transmit (data a1 + data a2), (data a1 + data a3), (data b1 + data b2), and (data b1 + data b3).
[0046] When the data processing unit 24 of the data processing device 20 receives requests from the data processing unit 13 of the edge terminal 10 for (data a1 + data a2), (data a1 + data a3), (data b1 + data b2), and (data b1 + data b3), it is necessary for the calculation processing unit 241 to process (data b1 + data b2), (data a1 + data a2), (data b1 + data b3), and (data a1 + data a3). For this reason, the data processing unit 24 obtains data a1, data a2, and data a3 from the operating time database 221a and data b1, data b2, and data b3 from the troubleshooting database 221b. The data processing unit 24 uses the data obtained from the operating time database 221a and the troubleshooting database 221b to perform data processing in the calculation processing unit 241 and returns the results of the data processing to the data processing unit 13 of the edge terminal 10.
[0047] When the data processing unit 13 of the edge terminal 10 receives (data a1 + data a2), (data a1 + data a3), (data b1 + data b2), and (data b1 + data b3) from the data processing unit 24 of the data processing unit 20, the calculation processing unit 131 performs data processing on {(data b1 + data b2) / (data a1 + data a2)} and {(data b1 + data b3) / (data a1 + data a3)} and returns the results of the data processing to the data processing unit 32 of the higher-level information processing unit 30.
[0048] When the data processing unit 32 of the higher-level information processing device 30 receives {(data b1 + data b2) / (data a1 + data a2)} and {(data b1 + data b3) / (data a1 + data a3)} requested by the data processing unit 13 of the edge terminal 10, the calculation processing unit 321 calculates √[{(data b1 + data b2) / (data a1 + data a2)} 2 + {(data b1 + data b3) / (data a1 + data a3)} 2The data processing unit 32 performs the following data processing. As a result, it calculates the cumulative tolerance between the frequency of malfunctions during the total operating time of data a1 and data a2 and the frequency of malfunctions during the total operating time of data a1 and data a3.
[0049] In this way, the data processing load can be distributed among the data processing units 13, 24, and 32 by having the data processing results of other data processing units 13 and 24, which are necessary for the data processing performed by the data processing units 32 of the higher-level information processing device 30 and the data processing unit 13 of the edge terminal 10, acquire the results of the data processing performed by other data processing units 13 and 24.
[0050] Here, we will explain the operation of the data processing system 100 according to Embodiment 1 when reading data, using specific examples. As a first example of the operation of the data processing system 100 when reading data, we will explain a data processing method for calculating the "trouble time," which is the time it takes to recover from a problem.
[0051] For example, the calculation processing unit 131 of the data processing unit 13 of the edge terminal 10 calculates the trouble time for trouble A on production line A by subtracting the standard work time from the difference between the end time of work and the time the trouble occurred. The "standard work time" is the average value of the work time on the production line and is set in advance in the calculation processing unit 131. The standard work time can be calculated from the start time and the end time of work. Each work time can be obtained by subtracting the start time from the end time of work, and the standard work time can be obtained by performing the calculation (sum of work times) ÷ (determinant). The determinant can be obtained, for example, by counting the number of work start times. Since the end time of work and the time the trouble occurred are necessary to calculate the difference between the end time of work and the time the trouble occurred, the data processing unit 13 of the edge terminal 10 requests the data processing unit 24 of the data processing unit 20 to transmit the end time of work and the time the trouble occurred. The data processing unit 24 of the data processing device 20 retrieves the trouble occurrence time for trouble A of production line A, which is stored in the troubleshooting database 221b, and the work completion time of production line A, which is stored in the operating time database 221a, by having the master management unit 222 read them from the database 221.
[0052] In this example, the master management unit 222 reads the most recent work completion time after the error occurrence time of trouble A. The data processing unit 24 of the data processing device 20 returns the work completion time and the trouble occurrence time to the data processing unit 13 of the edge terminal 10. The data processing unit 13 of the edge terminal 10 calculates the trouble time by subtracting the standard work time from the difference between the trouble occurrence time and the work completion time. In this way, the data processing system 100 can calculate the trouble time from the work completion time, which is a column in the operating time database 221a, and the trouble occurrence time, which is a column in the troubleshooting database 221b.
[0053] The standard working time may be calculated by the data processing unit 24 of the data processing device 20. In this case, the data processing unit 13 of the edge terminal 10 requests the data processing unit 24 of the data processing device 20 to transmit the work completion time, the trouble occurrence time, and the standard working time. The data processing unit 24 of the data processing device 20 retrieves the trouble occurrence time for trouble A of production line A, which is stored in the troubleshooting database 221b, and the work completion time of production line A, which is stored in the operating time database 221a, from the database 221 by having the master management unit 222 read them. The data processing unit 24 of the data processing device 20 also calculates the standard working time from the work start time and work end time.
[0054] In this example, the master management unit 222 reads the most recent work completion time after the error occurrence time of Trouble A. The data processing unit 24 of the data processing device 20 returns the work completion time, the trouble occurrence time, and the standard work time to the data processing unit 13 of the edge terminal 10. The data processing unit 13 of the edge terminal 10 calculates the trouble time by subtracting the standard work time from the difference between the trouble occurrence time and the work completion time.
[0055] Next, as a second example of the operation when reading data in the data processing system 100, a data processing method for calculating the cycle time will be described. For example, the data processing unit 32 of the higher-level information processing device 30 calculates the cycle time by calculating the difference between the completion time of the final process of a pre-set workpiece and the completion time of the final process of the next workpiece. In order to calculate the difference between the completion time of the final process of a pre-set workpiece and the completion time of the final process of the next workpiece, the completion times of the final process of the pre-set workpiece and the final process of the next workpiece are required. For this reason, the data processing unit 32 of the higher-level information processing device 30 requests the data processing unit 13 of the edge terminal 10 to transmit the completion times of the final process of the pre-set workpiece and the final process of the next workpiece. The data processing unit 13 of the edge terminal 10 requests the data processing unit 24 of the data processing device 20 to transmit the completion times of the final process of the pre-set workpiece and the final process of the next workpiece. The data processing unit 24 of the data processing device 20 retrieves the pre-set work completion times for the final process of a workpiece and the work completion times for the final process of the next workpiece, which are stored in the operating time database 221a, by having the master management unit 222 read them from the database 221.
[0056] The data processing unit 24 of the data processing device 20 returns the pre-set completion time of the final process of a workpiece and the completion time of the final process of the next workpiece to the data processing unit 13 of the edge terminal 10. The data processing unit 13 of the edge terminal 10 returns the pre-set completion time of the final process of a workpiece and the completion time of the final process of the next workpiece to the higher-level information processing device 30. The data processing unit 32 of the higher-level information processing device 30 calculates the cycle time from the difference between the pre-set completion time of the final process of a workpiece and the completion time of the final process of the next workpiece. In this way, the data processing system 100 can calculate the cycle time from the completion time column of the operating time database 221a.
[0057] Next, as a third example of the operation when reading data in the data processing system 100, a data processing method for calculating the changeover time will be described. For example, the data processing unit 32 of the higher-level information processing device 30 calculates the changeover time by subtracting the standard work time from the difference between the work completion time before the model name changes and the work completion time immediately after the model name changes. In order to calculate the difference between the work completion time before the model name changes and the work completion time immediately after the model name changes, the work completion time before the model name changes and the work completion time immediately after the model name changes are required. For this reason, the data processing unit 32 of the higher-level information processing device 30 requests the data processing unit 13 of the edge terminal 10 to transmit the work completion time before the model name changes and the work completion time immediately after the model name changes. The data processing unit 13 of the edge terminal 10 requests the data processing unit 24 of the data processing unit 20 to transmit the work completion time before the model name changes and the work completion time immediately after the model name changes. The data processing unit 24 of the data processing unit 20 has the master management unit 222 read the work completion time before the model name changes and the work completion time immediately after the model name changes, which are stored in the operating time database 221a, and obtains them from the database 221.
[0058] The data processing unit 24 of the data processing device 20 returns the work completion time before the model name change and the work completion time immediately after the model name change to the data processing unit 13 of the edge terminal 10. The data processing unit 13 of the edge terminal 10 returns the work completion time before the model name change and the work completion time immediately after the model name change to the data processing unit 32 of the higher-level information processing device 30. The data processing unit 32 of the higher-level information processing device 30 calculates the changeover time by subtracting the standard work time from the difference between the work completion time before the model name change and the work completion time immediately after the model name change. In this way, the data processing system 100 can calculate the changeover time from the work completion time column of the operating time database 221a.
[0059] Next, as a fourth example of data reading in the data processing system 100, a data processing method for calculating the start-up time will be described. For example, the data processing unit 32 of the higher-level information processing device 30 calculates the start-up time by calculating the difference between the start time of work and the end time of work for the first item. In order to calculate the difference between the start time of work and the end time of work for the first item, the start time of work and the end time of work for the first item are required. For this reason, the data processing unit 32 of the higher-level information processing device 30 requests the data processing unit 13 of the edge terminal 10 to transmit the start time of work and the end time of work for the first item. The data processing unit 13 of the edge terminal 10 requests the data processing unit 24 of the data processing device 20 to transmit the start time of work and the end time of work for the first item. The data processing unit 24 of the data processing device 20 has the master management unit 222 read the start time of work and the end time of work for the first item stored in the operating time database 221a and obtains them from the database 221.
[0060] The data processing unit 24 of the data processing device 20 returns the work start time and the work end time of the first item to the data processing unit 13 of the edge terminal 10. The data processing unit 13 of the edge terminal 10 returns the work start time and the work end time of the first item to the data processing unit 32 of the higher-level information processing device 30. The data processing unit 32 of the higher-level information processing device 30 calculates the start time by calculating the difference from the standard work time based on the difference between the work start time and the work end time of the first item. In this way, the data processing system 100 can calculate the start time from the work start time and work end time, which are columns of the operating time database 221a.
[0061] Next, as a fifth example of data reading in the data processing system 100, a data processing method for calculating trouble initiation time and trouble resolution time will be described. Trouble time can be divided into two parts: trouble initiation time, which is the time from the occurrence of a trouble to the start of trouble resolution, and trouble resolution time, which is the time spent dealing with the trouble. To reduce the former, measures are needed to notify workers of the occurrence of a trouble as early as possible, and to reduce the latter, measures are needed to shorten the time it takes to actually deal with the trouble and recover. Thus, since the methods for shortening trouble initiation time and trouble resolution time are different, it is necessary to grasp each time individually. For this reason, the data processing system 100 according to Embodiment 1 calculates trouble initiation time and trouble resolution time individually.
[0062] For example, in the data processing unit 32 of the higher-level information processing device 30, the trouble initiation time and trouble recovery start time are calculated as the trouble initiation time, and the trouble handling time is calculated by subtracting the standard work time from the difference between the trouble recovery start time and the work completion time of the next work, thereby calculating the trouble initiation time and trouble handling time. In order to calculate the difference between the trouble initiation time and the trouble recovery start time, and the difference between the trouble recovery start time and the work completion time of the next work, the trouble initiation time, the trouble recovery start time, and the work completion time of the next work are required. For this reason, the data processing unit 32 of the higher-level information processing device 30 requests the data processing unit 13 of the edge terminal 10 to transmit the trouble initiation time, the trouble recovery start time, and the work completion time of the next work. The data processing unit 13 of the edge terminal 10 requests the data processing unit 24 of the data processing device 20 to transmit the trouble initiation time, the trouble recovery start time, and the work completion time of the next work. The data processing unit 24 of the data processing device 20 retrieves the time of trouble occurrence, the time of trouble recovery start, and the time of completion of the next work, which are stored in the operating time database 221a, by having the master management unit 222 read them from the database 221.
[0063] The data processing unit 24 of the data processing device 20 returns the trouble occurrence time, trouble recovery start time, and the next work completion time obtained from the troubleshooting database 221b to the data processing unit 13 of the edge terminal 10. The data processing unit 13 of the edge terminal 10 returns the trouble occurrence time, trouble recovery start time, and the next work completion time to the data processing unit 32 of the higher-level information processing device 30. The data processing unit 32 of the higher-level information processing device 30 calculates the trouble initiation time as the difference between the trouble occurrence time and the trouble recovery start time, and calculates the trouble handling time by subtracting the standard work time from the difference between the trouble recovery start time and the next work completion time. In this way, the data processing system 100 can calculate the trouble initiation time and trouble handling time from the trouble occurrence time and trouble recovery start time, which are columns of the troubleshooting database 221b, and the work completion time, which is a column of the operating time database 221a.
[0064] As described above, the data processing system 100 according to Embodiment 1 obtains the necessary data by calculation by utilizing the data in each column of multiple databases 221.
[0065] In the data processing system 100 according to Embodiment 1, the data stored in the database 221 is simplified and standardized. Therefore, when using the data at the edge terminal 10 or the higher-level information processing device 30, it may be necessary to process the data into a format usable by the edge terminal 10 or the higher-level information processing device 30. The data processing system 100 distributes the data processing among the edge terminal 10, the data processing device 20, and the higher-level information processing device 30, thereby reducing the time required for data processing compared to performing data processing in one location and ensuring real-time data processing.
[0066] Here, a data processing device in which data of different data types are mixed and stored in the same database is referred to as the data processing device of the comparative example. In the data processing device of the comparative example, when reading multiple data of different data types from the same database, it is necessary to read the data sequentially. On the other hand, the data processing device 20 of Embodiment 1 stores data in the database 221 classified by data type, so it can read data of different data types in parallel from multiple databases 221. Thus, when comparing the data processing device 20 of Embodiment 1 with the data processing device of the comparative example in which data of different data types are mixed and stored in the same database, the data processing device 20 of Embodiment 1 can read data from the database 221 at high speed.
[0067] The real-time operation system unit 23 of the data processing device 20 has a function to limit the number of edge terminals 10 that can connect, and adjusts the access load to the database 221 and the processing load on the master management unit 222 by limiting the number of edge terminals 10 that are allowed to connect according to the required real-time performance.
[0068] One method for controlling the number of edge terminals 10 that can connect to the data processing device 20 is to pre-set the number of permitted connections. If the data processing device 20 receives a connection request from another edge terminal 10 while the permitted number of edge terminals 10 are connected, it will reject the connection.
[0069] A second method for controlling the number of edge terminals 10 that can connect to the data processing device 20 is to refuse connection of subsequent edge terminals 10 when the amount of data processed by the data processing device 20 exceeds a preset first threshold, and to allow connection of subsequent edge terminals 10 when the amount of data processed by the data processing device 20 falls below a preset second threshold.
[0070] A third method for controlling the number of edge terminals 10 that can be connected to the data processing device 20 is to classify the edge terminals 10 into levels based on processing speed and communication speed, and limit the number of connected edge terminals 10 according to the level. For example, if the edge terminals 10 are classified into levels A and B based on processing speed and communication speed, the number of connected edge terminals 10 can be set to P if all edge terminals 10 are level A, and to Q if all edge terminals 10 are level B. If the ratio of level A edge terminals 10 to level B edge terminals 10 is R%, the number of level A edge terminals 10 and level B edge terminals 10 can be set to S and T respectively, and the connection is rejected if the number of connected edge terminals 10 of each level exceeds the set number.
[0071] The data processing device 20 may experience a decrease in real-time performance if an edge terminal 10 with low processing speed and communication speed is connected. For this reason, in the above example, if the processing speed and communication speed of a level A edge terminal 10 are faster than the processing speed and communication speed of a level B edge terminal 10, then P > Q. In the data processing system 100 according to Embodiment 1, by classifying the edge terminals 10 into levels based on processing speed and communication speed and limiting the number of edge terminals 10 that can be connected to the data processing device 20 according to the level, the number of edge terminals 10 with low processing speed and communication speed that can be connected is made smaller than the number of edge terminals 10 with high processing speed and communication speed that can be connected, thereby ensuring real-time performance.
[0072] Alternatively, instead of limiting the number of connectable edge terminals 10, the data processing device 20 may be provided with multiple databases 221 that store data of the same data type, and access to each edge terminal 10 may be distributed to a different database 221, thereby preventing a concentration of access to a single database 221 and ensuring real-time performance.
[0073] Alternatively, a cloud service called IaaS (Infrastructure as a Service) may be used, and servers and storage connected to the data processing device 20 via a network may be used as databases 221. When using IaaS, the number of databases 221 required to ensure the necessary real-time performance can be calculated, and the real-time performance of data processing can be ensured by receiving the calculated number of databases 221. The number of databases required to ensure real-time performance can be dynamically optimized by recalculating the number of databases 221 at predetermined intervals or at predetermined timings such as when the amount of data exceeds a certain amount.
[0074] Here, a data processing system 100 equipped with a higher-level information processing device 30 has been described, but the data processing system 100 may also be configured without the higher-level information processing device 30. In other words, it is also possible to configure the data processing system 100 with at least one edge terminal 10 and a data processing device 20.
[0075] In the data processing system 100 according to Embodiment 1, when the data processing device 20 stores data in the database 221, it stores the data in a predetermined database 221 for each data type. Therefore, the data processing device 20 does not need to perform any data processing when storing data in the database 221. This reduces the time required to store data collected from the edge terminal 10 in the database 221 and ensures real-time performance without changing the content of the data processing.
[0076] Furthermore, in the data processing system 100 according to Embodiment 1, when using data stored in the database 221, data processing can be shared among the edge terminal 10, the data processing device 20, and the higher-level information processing device 30. This reduces the time required for data processing and ensures real-time data processing without changing the content of the data processing. In particular, since the data processing device 20 needs to respond to data processing requests from multiple edge terminals 10, data processing in the data processing device 20 tends to become a bottleneck, impairing real-time performance. However, the data processing system 100 according to Embodiment 1 can suppress the data processing load on the data processing device 20, thus ensuring real-time data processing.
[0077] In the above example, the data in database 221 was assumed to be raw, unprocessed data. However, if the results of data processing in the data processing unit 24 of the data processing device 20 are frequently used, the data processing results of the data processing unit 24 may be additionally stored in database 221. By additionally storing the data processing results of the data processing unit 24 in database 221, the data processing unit 24 of the data processing device 20 no longer needs to repeatedly perform the same data processing, thereby reducing the data processing load on the data processing device 20.
[0078] Embodiment 2. Figure 10 shows the configuration of the data processing system according to Embodiment 2. The data processing system 100 according to Embodiment 2 differs from the data processing system 100 according to Embodiment 1 in that it includes a cloud server 40.
[0079] In the data processing system 100 according to Embodiment 2, the data processing device 20 transmits data from the database 221 to the cloud server 40 at a predetermined interval, thereby reducing the amount of data stored in the database 221 and ensuring real-time access from the edge terminal 10.
[0080] The pre-set interval here refers to the time required to maintain the minimum amount of data necessary to satisfy the real-time processing of the edge terminal 10. This may be a fixed interval, such as every 5 seconds, or it may be a time interval calculated based on the timing of data updates in the database 221 and the functions required by the edge terminal 10.
[0081] In the data processing system 100 according to Embodiment 2, for example, when performing statistical analysis including past data on the edge terminal 10 or the higher-level information processing device 30, the system can perform statistical analysis by processing data obtained by adding the data in the database 221 and the data in the cloud server 40. As a result, even if the sample size is insufficient to perform highly accurate statistical analysis using only the data in the database 221 of the data processing device 20, the data processing system 100 can perform highly accurate statistical analysis using data obtained by adding the data in the database 221 and the data in the cloud server 40.
[0082] Next, the hardware configuration of the data processing units 13, 24, and 32 provided in the edge terminal 10, data processing unit 20, and higher-level information processing unit 30 will be described. Figure 11 is a diagram showing an example of the hardware configuration for realizing the data processing units provided in the edge terminal, data processing unit, and higher-level information processing unit of the data processing system according to Embodiment 1 and Embodiment 2. The data processing units 13, 24, and 32 are realized as a computer system by a processing circuit that includes a processor 91 that performs various processes, a memory 92 which is the main memory, and a storage device 93 that stores information.
[0083] The processor 91 may be an arithmetic unit, microprocessor, microcomputer, CPU (Central Processing Unit), or DSP (Digital Signal Processor). The memory 92 may be a non-volatile or volatile semiconductor memory such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable Read Only Memory), or EEPROM® (Electrically Erasable Programmable Read Only Memory). The storage device 93 stores a program for executing data processing. The processor 91 reads the program stored in the storage device 93 into the memory 92 and executes it. The functions of the data processing units 13, 24, and 32 are realized when the processor 91 reads the program stored in the storage device 93 into the memory 92 and executes it.
[0084] The configurations shown in the above embodiments are merely examples of the content, and can be combined with other known technologies. It is also possible to omit or modify parts of the configuration without departing from the gist of the invention.
[0085] 10 Edge terminal, 11, 21, 31 Communication unit, 12 Data acquisition unit, 13, 24, 32 Data processing unit, 14, 33 Input unit, 15, 34 Output unit, 16, 35 Control unit, 20 Data processing unit, 22 Database unit, 23 Real-time operation system unit, 30 Higher-level information processing unit, 40 Cloud server, 90 Equipment, 91 Processor, 92 Memory, 93 Storage unit, 100 Data processing system, 131, 241, 321 Calculation processing unit, 200 Machine system, 221 Database, 221a Operating time database, 221b Troubleshooting database, 221c Traceability database, 222 Master management unit.
Claims
1. A data processing device comprising: a database that stores data of equipment collected by an edge terminal that collects data of equipment constituting a mechanical system and performs pre-configured data processing of said equipment; and a data processing device that performs calculation processing according to a pre-configured calculation formula, and by performing the calculation processing on the data read from the database, generates data to be used for data processing performed by the edge terminal.
2. The data processing device according to claim 1, further comprising a real-time operation system unit that processes requests from the edge terminal in real time, wherein the data processing unit performs the calculation processing on the data read from the database based on instructions from the real-time operation system unit.
3. The data processing device according to claim 1 or 2, characterized in that the database stores unprocessed data collected from the equipment.
4. The data processing device according to any one of claims 1 to 3, characterized in that the number of connectable edge terminals is limited to a number that can process requests from the edge terminals in real time.
5. The data processing device according to any one of claims 1 to 4, characterized in that the columns of the data of the equipment stored in the database are parameters of the calculation formula.
6. The data processing device according to any one of claims 1 to 5, characterized in that it transmits the data of the equipment stored in the database to a cloud server connected via a network at a predetermined interval.
7. A data processing system comprising an edge terminal for collecting data of equipment constituting a mechanical system, and a data processing device having a database for storing the data of the equipment collected by the edge terminal, wherein each of the edge terminal and the data processing device has a data processing device having a calculation processing unit that performs calculation processing according to a predetermined calculation formula, the data processing unit of the data processing device performs calculation processing on data read from the database, and the data processing unit of the edge terminal performs the calculation processing on data acquired from the data processing device.
8. The data processing system according to claim 7, characterized in that the database stores unprocessed data obtained from the equipment.
9. The data processing system according to claim 7 or 8, characterized in that the data processing device limits the number of connectable edge terminals to a number that can process requests from the edge terminals in real time.
10. The data processing system according to any one of claims 7 to 9, characterized in that the columns of the equipment data stored in the database are parameters of the calculation formula used in the calculation processing performed by the data processing unit of the data processing device.
11. The data processing system according to any one of claims 7 to 10, characterized in that the data processing device transmits the data of the equipment stored in the database to a cloud server connected via a network at predetermined intervals.
12. The data processing system according to any one of claims 7 to 11, characterized in that the calculation formula of the edge terminal and the calculation formula of the data processing device are different.
13. The data processing system according to 12, further comprising a higher-level information processing device having a data processing unit whose calculation formula differs from that of the edge terminal and the data processing device, wherein the higher-level information processing device acquires the results of data processing from the edge terminal, and the data processing unit of the higher-level information processing device performs data processing using the results of data processing from the edge terminal.
14. A data processing method characterized by comprising: a step of a data processing device reading data of equipment stored in a database in response to a request from an edge terminal that collects data of equipment constituting a mechanical system and performs pre-configured data processing of said equipment; a step of the data processing device performing a first data processing on the data of equipment read from the database, which generates data to be used for data processing performed by the edge terminal using a pre-configured calculation formula; a step of the data processing device returning the result of the first data processing to the edge terminal that requested the first data processing; and a step of the edge terminal performing a second data processing, which is data processing using a calculation formula different from that of the data processing device, using the result of the first data processing obtained from the data processing device.
15. The data processing method according to 14, characterized in that the edge terminal returns the result of the second data processing to a higher-level information processing device connected to the edge terminal, and the higher-level information processing device performs a third data processing using the result of the second data processing obtained from the edge terminal, with a calculation process using a calculation formula different from that of the edge terminal.