WO2024043932A1 - Compression intégrée pour la gestion d e données de cycle de vie de produit - Google Patents
Compression intégrée pour la gestion d e données de cycle de vie de produit Download PDFInfo
- Publication number
- WO2024043932A1 WO2024043932A1 PCT/US2022/075452 US2022075452W WO2024043932A1 WO 2024043932 A1 WO2024043932 A1 WO 2024043932A1 US 2022075452 W US2022075452 W US 2022075452W WO 2024043932 A1 WO2024043932 A1 WO 2024043932A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- time series
- series data
- database
- recited
- Prior art date
Links
- 238000007906 compression Methods 0.000 title claims abstract description 70
- 230000006835 compression Effects 0.000 title claims abstract description 70
- 238000013523 data management Methods 0.000 title abstract description 6
- 230000006399 behavior Effects 0.000 claims abstract description 4
- 230000006837 decompression Effects 0.000 claims abstract description 4
- 238000000034 method Methods 0.000 claims description 26
- 238000012544 monitoring process Methods 0.000 claims description 2
- 230000004044 response Effects 0.000 abstract description 6
- 238000013144 data compression Methods 0.000 abstract description 5
- 238000004519 manufacturing process Methods 0.000 description 29
- 238000012545 processing Methods 0.000 description 13
- 238000003860 storage Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 9
- 238000005070 sampling Methods 0.000 description 6
- 238000012549 training Methods 0.000 description 6
- 238000013139 quantization Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000000737 periodic effect Effects 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 239000008186 active pharmaceutical agent Substances 0.000 description 3
- 238000005311 autocorrelation function Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005314 correlation function Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241000282575 Gorilla Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000009530 blood pressure measurement Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000000875 corresponding effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000004941 influx Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920001610 polycaprolactone Polymers 0.000 description 1
- 238000004801 process automation Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000013068 supply chain management Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012731 temporal analysis Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000000700 time series analysis Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/60—General implementation details not specific to a particular type of compression
- H03M7/6064—Selection of Compressor
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/60—General implementation details not specific to a particular type of compression
- H03M7/6017—Methods or arrangements to increase the throughput
- H03M7/6023—Parallelization
Definitions
- Automation systems can be used to control the operation of machines and other components in a systematic manner.
- Automation systems can include various automation domains such as factory automation, process automation, warehouse automation, building automation, energy automation, and the like. It is recognized herein that real-time compression of time- series data is often of crucial importance to manufacturing and process industries, which often require that collected data is understood so that decisions can be made in real time. It is further recognized herein that current approaches to data compression in the lifecycle of data management for various automation systems including manufacturing and process industries lack efficiencies.
- Embodiments of the invention address and overcome one or more of the described- herein shortcomings or technical problems by providing methods, systems, and apparatuses that achieve high-efficiency data compression for manufacturing and process industries.
- a system described herein can perform lightweight data compression that optimizes an embedded database for high-performance throughput, low memory usage, and fast query /response times.
- operations are performed within an industrial control network that includes a plurality of edge devices and a database.
- the edge devices can monitor the industrial control network so as to receive time series data from the industrial control network.
- the edge devices and/or the database can compress the time series data so as to define compressed data.
- the compressed data can be stored in the database, so as to define an embedded database of the industrial control network.
- the edge devices or database can select a model for performing compression of the time series data.
- the edge devices or database can detect a delay associated with the time series data.
- the database can decompress the compressed data, so as to define reconstructed original data.
- a query for the time series data can be received by the database.
- the database can display the reconstructed original data associated with the query.
- the plurality of edge devices can include sensors, and the time series data can include respective time stamps and sensor data detected from the sensors.
- the time stamps are compressed together with the sensor data, such that the compressed data comprises compressed time stamps and sensor data.
- FIG. 1 is a block diagram of an example manufacturing or automation system that includes a plurality of edge devices configured to perform data compression, in accordance with an example embodiment.
- FIG. 2 is a block diagram of an example compression computing system, in accordance with an example embodiment.
- FIG. 3 is a flow diagram that illustrates example operations that can be performed by the compression computing system, in accordance with an example embodiment.
- FIG. 4 shows an example of a computing environment within which embodiments of the disclosure may be implemented.
- An embedded database can be used to log manufacturing and process data.
- embedded databases can log large amounts of measured data using a comparatively small amount of storage space.
- An embedded database can require managing the entire lifecycle of live real-time data streams. The lifecycle can include receiving or capturing live data, processing the data, and then distributing the processed data, for instance to deliver visualization and analytics that can enable meaningful manufacturing decisions.
- a compression and management platform or system enables various applications to efficiently monitor, communicate, store, process, analyze, and visualize industrial data.
- Industrial data may include, for example and without limitation, data related to pressure, temperature, fluid flow rate, velocity, acceleration, and other physical, chemical, or biological parameters.
- a first class identifies repeating elements in the original data (e.g., Winzip/7zip file compression). These algorithms generally define lossless compression, in which the original data is represented without losing any information, and the process is reversible.
- the compressing and decompressing are often computationally intensive, such that a wider application of these compressors can be limited in dealing with time- sensitive compression tasks (e.g., fast sampling manufacturing processes such as vibration control in CNC machines).
- a second class of compressors identifies redundant data, which can be discarded based on the predefined compression accuracy.
- Typical examples are collector compression and archive compression.
- the collector compression examines the values of measured data, and discards those within a defined value range (e.g., ⁇ 1 mm in distance measurements and ⁇ 10 Pascal in pressure measurements).
- Collector compression stores data based on the amount of change in data. It records a value only when the new value deviates too much from the last recorded value.
- archive compression stores data based on its rate of change in data. It examines the slope of measured data, and discards those that fall within a predefined slope range.
- this algorithm can store data that “changes direction” beyond a configured range.
- Archive compression is also called swinging door compression, which often runs after collector compression.
- collector compression and archive compression are lossy compressors. However, they are typically more scalable to the data sizes, and suitable for time- sensitive compression tasks.
- QVZ is an example lossy compressor for quality values in genomic data, which allows for a parameter to control the tradeoff between accuracy and compression ratio.
- GTRAC is an example compressor for genomic variants that allows fast random access directly from the compressed data without needing to decompress the entire compressed archive.
- Time series data is common to various applications.
- the Gorilla database from Facebook uses a simple delta encoding-based compressor that uses the fact that time series data typically changes slowly.
- a lossy compressor uses a first-order regression model to predict the next element in the time series, and then store the errors from the predicted value.
- An example higher-order prediction model can be used for floating point data.
- a prediction for the next value can be calculated based on many previous observations instead of just the previous one.
- the time-series compressors mentioned above are useful for a generic time-series, but they are designed using one assumption: the data generating processes are linear and slow time-variant systems. Therefore, it is recognized herein that these methods do not capture nonlinear structures in time-series data well.
- an example compressor is developed based on the prediction-quantization-entropy coder framework, and benefits from improved prediction using nonlinear models and deep neural networks for multivariate floating-point time series data that provides guaranteed reconstruction up to user-specified maximum absolute error.
- LFZip achieves significant improvement in compression over the previous state-of-the-art compressors as demonstrated by evaluating the compressor on several time series datasets.
- an example automation or industrial control network or system 100 can include one or more plants or production networks 104 that contain control logic, host web servers, and the like.
- the industrial control network 100 can include an enterprise or IT network 102 and multiple operational plant or production networks 104 communicatively coupled to the IT network 102.
- the production network 104 or enterprise network 102 can include a plurality of edge devices or modules 106 connected within the production network 104.
- the edge devices or modules 106 can define a compression system, as further described herein.
- An example edge device 106 is connected to the IT network 102.
- the arrangement of edge devices or modules 106 can vary as desired, and all such arrangements are contemplated as being within the scope of this disclosure.
- the production network 104 can include various production machines configured to work together to perform one or more manufacturing operations.
- Example production machines of the production network 104 can include, without limitation, robots 108 and other field devices that can be controlled by a respective PLC 114, such as sensors 110, actuators 112, or other machines, such as automatic guided vehicles (AGVs) 108.
- the PLC 114 can send instructions to respective field devices.
- a given PLC 114 can be coupled to a human machine interfaces (HMIs) 116.
- HMIs human machine interfaces
- the industrial control network 100 is simplified for purposes of example. That is, the industrial control network 100 may include additional or alternative nodes or systems, for instance other network devices, that define alternative configurations, and all such configurations are contemplated as being within the scope of this disclosure.
- the network or system 100 in particular each production network 104, can define a field portion or level 118 and plant level or portion 120.
- the plant level 120 can define one or more industrial plants or systems that can be geographically and functionally separate from or independent of each other.
- the plant level 120 can include Brownfield plants and Greenfield plants that are each connected to respective field devices within the field level 118.
- the field level 118 can include various field devices such as the robots 108, PLC 114, sensors 110, actuators 112, HMIs 116, and AGVs.
- the field portion 118 can define one or more production lines or control zones associated with a given plant in the plant level 120.
- the PLC 114, sensors 110, actuators 112, and HMI 116 within a given production line can communicate with each other via a respective field bus 122.
- Each control zone can be defined by a respective PLC 114, such that the PLC 114, and thus the corresponding control zone, can connect to the respective plant portion 120 via an Ethernet connection 124.
- the robots 108 and AGVs can be configured to communicate with other devices within the fieldbus portion 118 via a Wi-Fi connection 126.
- the robots 108 and AGVs can communicate with the Ethernet portion 120, in particular a Supervisory Control and Data Acquisition (SCADA) server 128, via the Wi-Fi connection 126.
- SCADA Supervisory Control and Data Acquisition
- a respective edge device or module 106 is communicatively coupled between the PLC 114 and the respective plant in the plant level 120, for instance via the Ethernet connection 124 or the Wi-Fi connection 126.
- the edge module 106 is defined by the PLC 114.
- the plant level 120 of a given production network 104 can include various computing devices or subsystems communicatively coupled together via the Ethernet connection 124.
- Example computing devices or subsystems in the plant portion 120 include, without limitation, a mobile data collector 130, HMIs 132, the SCADA server 128, the edge devices 106, a wireless router 134, a manufacturing execution system (MES) 136, an engineering system (ES) 138, and a log server 140.
- the ES 138 can include one or more engineering works stations.
- the MES 136, HMIs 132, ES 138, and log server 140 are connected to the production network 104 directly.
- the wireless router 134 can also connect to the production network 104 directly.
- mobile users for instance the mobile data collector 130 and robots 108 (e.g., AGVs), can connect to the production network 104 via the wireless router 134.
- an example compression computing system 200 can be defined by one or more of the edge devices or modules 106 or PLCs 114.
- the compression computing system 200 can be configured to compress data in real-time.
- the computing system 200 can include one or more processors and memory having stored thereon applications, agents, and computer program modules including, for example, a predictor module 202, a quantization module 204 communicatively coupled to the predictor module 202, and a database 206 communicatively coupled to the quantization module 204.
- the database 206 defines a real-time database (RTDB).
- the computing system 202 can define a compressor module 201 that includes the predictor module 202 and the quantization module 204, and the database 206 can define a decompressor module 203 and therefore the compressor module 201 can be communicatively coupled to the decompressor module 203, and thus the database 206.
- program modules, applications, computer-executable instructions, code, or the like depicted in FIG. 2 are merely illustrative and not exhaustive, and that processing described as being supported by any particular module may alternatively be distributed across multiple modules or performed by a different module.
- various program module(s), script(s), plug-in(s), Application Programming Interface(s) (API(s)), or any other suitable computer-executable code may be provided to support functionality provided by the program modules, applications, or computer-executable code depicted in FIG. 2 and/or additional or alternate functionality.
- functionality may be modularized differently such that processing described as being supported collectively by the collection of program modules depicted in FIG.
- program modules that support the functionality described herein may form part of one or more applications executable across any number of systems or devices in accordance with any suitable computing model such as, for example, a client-server model, a peer-to-peer model, and so forth.
- any of the functionality described as being supported by any of the program modules depicted in FIG. 2 may be implemented, at least partially, in hardware and/or firmware across any number of devices, for instance the edge devices 106 or the PLCs 114.
- the database 206 can define a real-time database configured to perform embedded compression.
- the compression module 202 can be distributed across edge devices 106 and the database 206.
- the real-time database 206 can define an InfluxDB, which refers to a time series platform that empowers developers to build loT, analytics, and monitoring software.
- the database 206 can process time-stamped data produced by sensors, applications and infrastructure.
- compression operations e.g., operations 300 shown in FIG.
- the predictor module 202 can calculate a one-step-ahead prediction y t using A previous quantized values ⁇ y t -N> ••• where t is current sampling time, and N is model order.
- the error of the prediction s t with respect to the true value y t can be quantized by the quantization module 204, so as to define vector quantized errors ⁇ e 1; ••• , s t ⁇ .
- the vector quantized errors can be transferred and stored in an embedded time series database, for instance the database 206.
- the database 206 can include a general-purpose compressor (e.g., 7-zip) that can compress the vector quantized error.
- the quantized value of y t is calculated by the sum of the quantized error s t and the predicted value y t .
- the predictor module 202 can define a supervised learning model that can learn the parameters of the predictor module 202, so as minimize 2-norm of the quantized errors ⁇ e 1 , ••• , -jJ.
- the compressor module 202 runs on the edge devices 106, for instance the sensors 110 or PCLs 114.
- the quantization module 204 can send the quantized errors to the decompressor module 203 of the database 206, which, in some examples, can run on a cloud platform, for instance in the IT network 102.
- the decompressor module 203 can be embedded in the real-time database 206.
- the quantized vectors can be fed into the decompressor module 206 to reconstruct the original data for query and visualization.
- only the compressed data is stored in the database 206, which can result in significant reduction of storage and the query response time.
- the predictor module 202 defines a Normalized Least Mean Square (NLMS) predictor.
- the NLMS predictor can define an adaptive linear prediction filter.
- the parameters of the linear filter can be initialized with a fixed value and can be updated at each time- step based on the mean square prediction error.
- the update can be performed similar to stochastic gradient descent, where the gradients are normalized before update.
- the predictor contains very few parameters, it is recognized herein that in practice, the predictor can require no pre-training and can adapt very quickly to changing input statistics. Without being bound by theory, in practice, the NLMS predictor can work well on various types of inputs, though it will be understood that the predictor module 202 is not limited to implementing an NLMS predictor.
- the predictor module 202 can define one or more neural network predictors, such as different variants of the Fully Connected (FC) and the biGRU networks for univariate time series.
- the NLMS predictor can define a single layer linear neural network, and the FC and biGRU networks can define stronger models in comparison (in terms of expressions).
- the larger number of parameters in FC and biGRU networks make them adapt more slowly to the changing statistics in the time series as compared to the NLMS predictor.
- offline training is performed for the neural network-based predictors before the encoding step. During the offline training, a given model can be trained on given training data with early stopping performed with respect to validation data. The trained model can then be used as the predictor during compression, and the parameters can be optionally updated online during the compression.
- the input of the decompressor module 203 can include archived data that is stored in the database 206.
- the output of the decompressor module 203 can include reconstructed time series data to visualize on a graphic user interface (GUI), for instance in response to query commands from the end users.
- GUI graphic user interface
- the decompressor module 203 defines an NLMS decompressor, the parameters of the NLMS decompressor are calculated from those of the NLMS predictors.
- the weights of the neural network decompressor can be trained at the same time as when the neural network predictors are trained, for instance using labelled data via supervised learning or unlabeled data using unsupervised learning.
- example operations 300 can be performed by the industrial control network 100, in particular the compression computing system 200.
- data is received by a given field device 106, for instance the compressor module 201 of a field device.
- the compressor module 201 can select a model for performing compression of the received data.
- the partial autocorrelation function (PACF) gives the partial correlation of a stationary time series with its own lagged values, and regresses the values of the time series at shorter lags.
- the compressor module 201 can use the partial autocorrelation to determine when the given time-series has no or low dependence on obtained past values.
- the model order can be selected by via sampling a set of data from the time series.
- the sampling set can be obtained from sampling the historical data set or by sampling the first few samples.
- the compressor module 201 can perform a model selection algorithm that can run periodically for streaming applications, for example, to fine-tune the model on the fly. In some examples, the compressor module 201 can perform a multi-armed bandit search to speed up the model selection process. Thus, in various examples, the compressor module 201 can select a compression model with the lowest model order and least number of model parameters, thereby resulting in a higher compression ratio.
- the compressor module 201 can select a general, lossy, floatingpoint, time-series compressor, such as LFZip.
- the resulting compression can define a prediction-quantization-entropy coder framework that uses a maximum deviation metric.
- the predictor module 202 can define various predictors, such as an adaptive linear model (NLMS) or neural networks (NNs).
- NLMS adaptive linear model
- NNNs neural networks
- an NLMS predictor results in an order of magnitude speed improvement as compared to NN models.
- the number of parameters which correspond to the size of the past window based on which the predictor module 202 attempts to predict the current observed datapoint, can define the main hyperparameter in NLMS model-based prediction.
- the optimal number of parameters can vary depending on the time-series properties and the user- specified maximum allowed deviation at each timepoint.
- the compressor module 201 determines automatically the optimal model order for time-series with low or no dependence on obtained past values.
- using LFZip automatically can be advantageous both in terms of speed and compression ratio over LFZip (NLMS).
- the first few samples can define a training dataset so as to determine time-series properties as described above, and then the optimal chosen model order can be used on the remaining time-series.
- the chosen model can be finetuned on the fly by defining a training set periodically.
- time-series data may have a built-in delay, for example, of seasonality in the recorded data or mismatch in sensor synchronizations.
- a single time-series may define a periodic time structure.
- multiple time-series might share this periodic time structure.
- the system can perform a cross-correlation function (CCF) offline on the recorded datasets to determine the delays.
- CCF can define a measure of similarity of two time series at different time shifts.
- the maximum (e.g., or minimum if the two time series are negatively correlated) of the CCF can indicate the point in time where the two series are best aligned.
- the time delay between the two time series is determined by the argument of the maximum.
- the identified delays can be used to determine a better prediction for future timestamps given already observed data.
- delay detection increases the compression accuracy of the system 200.
- the compressor module 201 can perform a lower order compression model (e.g., with smaller number of parameters) for a given accuracy requirement.
- the time-series might have a built-in delay of seasonality in the recorded data or mismatch in sensor synchronizations. For example, a single time-series may have a periodic time structure.
- multiple time-series might share the periodic time structure.
- the compressor module 202 can perform an autocorrelation function (ACF) or cross -correlation function (CCF) on offline recorded datasets to determine this delay. The delay can be used to achieve a better prediction for future timestamps given already observed data.
- the system 200 can perform multi-time series compression, at 308.
- the compression module 202 can compress multiple time series together, and can compress the data and the time stamps together so as to define compressed data. Such compression can reduce the storage because of, for example, dependencies between multi-time series; and the same time stamps can be shared by multiple data points in different time series.
- LFZip supports compression of multiple time-series.
- industrial sensor measurements e.g., represented as multiple time series
- Such series can occur in pairs (e.g., 2 time-series sharing the same timestamps.)
- compressing both the timeseries together can result in almost two times compression over an LFZip compression ratio of individual files.
- sensor synchronization and the delay detection techniques described herein can further enhance the compression results.
- the compressed data can be transferred over the associated industrial network, for instance the industrial network 102.
- industrial networks can be in general categorized into difference classes, such as an automation system, SCADA system, and business system 120.
- the primary requirement of an industrial automation system is real-time operation and reliability, and the primary requirement of a business network may be high bandwidth and low operation costs.
- SCADA systems can sit between these two very different networks. In many ways, for example, SCADA systems can share the requirements of the control system itself.
- SCADA systems might need to be able to operate in real time.
- SCADA systems also can communicate with business systems over TCP/IP.
- the compression described herein is designed to meet the requirements of the classes of industrial networks identified above, so as to achieve goals related to lifecycle data management.
- the embedded lightweight compression described herein can meet the real time requirements of automation and SCADA networks, and the relatively high compression ratio can meet requirements of a low-cost business network with limited bandwidth.
- the compressed data that is transferred over the industrial network is decompressed so as to define reconstructed original data.
- an embedded decompressor can decode the compressed data transferred over the industrial network.
- the decompressor can be implemented into a data historian on edge devices 106, for instance the SCADA server 128, mobile data collector 130, HMIs 132, and PLC 114.
- the compression computing system 200 can define lightweight and computationally inexpensive mathematical operators, (e.g., multiplication, subtraction). Such operators can be supported by mainstream time series databases (TSDBs).
- TSDBs time series databases
- the described herein compression can be integrated into a time series platform that is optimized for real-time applications, such as applications for manufacturing process monitoring and control (e.g., Influx DB).
- the resulting embedded compressor integrated into the a database can define superior performance in terms of compression ratio, speed, storage, and accuracy when compared with state-of-art compressors.
- the InfluxDB is presented by way of example, the compression can be embedded in other real-time databases or industrial PLCs, and all such databases are contemplated as being within the scope of this disclosure.
- the compression computing system 200 can define an embedded and portable compressor with self-learning capability to deploy in different and challenging industrial settings (e.g., flexible manufacturing systems, process systems, industrial loT platforms, supply chain management and industrial data visualization, etc.).
- the real-time compression with learning capability can be achieved by transmitting and archiving compressed data with an embedded decompressor to reconstruct the original data on the fly, thereby reducing the redundancies in generic time-series data via utilizing automatically learned features using deep neural networks.
- operations are performed within an industrial control network that includes a plurality of edge devices and a database.
- the edge devices can monitor the industrial control network so as to receive time series data from the industrial control network.
- the edge devices and/or the database can compress the time series data so as to define compressed data.
- the compressed data can be stored in the database, so as to define an embedded database of the industrial control network.
- the edge devices or database can select a model for performing compression of the time series data.
- the edge devices or database can detect a delay associated with the time series data. Multiple time series data can be compressed in parallel, so as to compress respective time series data simultaneously.
- the compressed data can be transferred or sent throughout the industrial network.
- the database can decompress the compressed data, so as to define reconstructed original data.
- the compressing and decompressing are performed without libraries or branches, so as to define library-free and branch-free compression and decompression with predictable run-time behavior for lifecycle data management.
- a query for the time series data can be received by the database. Responsive to the query, the database can display the reconstructed original data associated with the query.
- the plurality of edge devices can include sensors, and the time series data can include respective time stamps and sensor data detected from the sensors.
- the time stamps are compressed together with the sensor data, such that the compressed data comprises compressed time stamps and sensor data.
- the compression computing system 200 was verified using an example test dataset that consisted of 1000 time series data having various natures (e.g., fast and slow dynamics, linear or highly nonlinear data set, short-term or long-term dependency etc.).
- the compression computing system 200 exhibited significant improvement in both memory and disk storage over the previous state-of-the-art compressors.
- the response time to query command is comparable with the embedded decompressor activated or deactivated.
- FIG. 4 illustrates an example of a computing environment within which embodiments of the present disclosure may be implemented.
- a computing environment 800 includes a computer system 810 that may include a communication mechanism such as a system bus 821 or other communication mechanism for communicating information within the computer system 810.
- the computer system 810 further includes one or more processors 820 coupled with the system bus 821 for processing the information.
- the industrial control network 100 in particular the compression computing system 200, may include, or be coupled to, the one or more processors 820.
- the processors 820 may include one or more central processing units (CPUs), graphical processing units (GPUs), or any other processor known in the art. More generally, a processor as described herein is a device for executing machine-readable instructions stored on a computer readable medium, for performing tasks and may comprise any one or combination of, hardware and firmware. A processor may also comprise memory storing machine-readable instructions executable for performing tasks. A processor acts upon information by manipulating, analyzing, modifying, converting or transmitting information for use by an executable procedure or an information device, and/or by routing the information to an output device.
- CPUs central processing units
- GPUs graphical processing units
- a processor may use or comprise the capabilities of a computer, controller or microprocessor, for example, and be conditioned using executable instructions to perform special purpose functions not performed by a general purpose computer.
- a processor may include any type of suitable processing unit including, but not limited to, a central processing unit, a microprocessor, a Reduced Instruction Set Computer (RISC) microprocessor, a Complex Instruction Set Computer (CISC) microprocessor, a microcontroller, an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA), a System-on-a-Chip (SoC), a digital signal processor (DSP), and so forth.
- RISC Reduced Instruction Set Computer
- CISC Complex Instruction Set Computer
- ASIC Application Specific Integrated Circuit
- FPGA Field-Programmable Gate Array
- SoC System-on-a-Chip
- DSP digital signal processor
- processor(s) 820 may have any suitable microarchitecture design that includes any number of constituent components such as, for example, registers, multiplexers, arithmetic logic units, cache controllers for controlling read/write operations to cache memory, branch predictors, or the like.
- the microarchitecture design of the processor may be capable of supporting any of a variety of instruction sets.
- a processor may be coupled (electrically and/or as comprising executable components) with any other processor enabling interaction and/or communication there-between.
- a user interface processor or generator is a known element comprising electronic circuitry or software or a combination of both for generating display images or portions thereof.
- a user interface comprises one or more display images enabling user interaction with a processor or other device.
- the system bus 821 may include at least one of a system bus, a memory bus, an address bus, or a message bus, and may permit exchange of information (e.g., data (including computer-executable code), signaling, etc.) between various components of the computer system 810.
- the system bus 821 may include, without limitation, a memory bus or a memory controller, a peripheral bus, an accelerated graphics port, and so forth.
- the system bus 821 may be associated with any suitable bus architecture including, without limitation, an Industry Standard Architecture (ISA), a Micro Channel Architecture (MCA), an Enhanced ISA (EISA), a Video Electronics Standards Association (VESA) architecture, an Accelerated Graphics Port (AGP) architecture, a Peripheral Component Interconnects (PCI) architecture, a PCI-Express architecture, a Personal Computer Memory Card International Association (PCMCIA) architecture, a Universal Serial Bus (USB) architecture, and so forth.
- ISA Industry Standard Architecture
- MCA Micro Channel Architecture
- EISA Enhanced ISA
- VESA Video Electronics Standards Association
- AGP Accelerated Graphics Port
- PCI Peripheral Component Interconnects
- PCMCIA Personal Computer Memory Card International Association
- USB Universal Serial Bus
- the system memory 830 may include computer readable storage media in the form of volatile and/or nonvolatile memory, such as read only memory (ROM) 831 and/or random access memory (RAM) 832.
- the RAM 832 may include other dynamic storage device(s) (e.g., dynamic RAM, static RAM, and synchronous DRAM).
- the ROM 831 may include other static storage device(s) (e.g., programmable ROM, erasable PROM, and electrically erasable PROM).
- the system memory 830 may be used for storing temporary variables or other intermediate information during the execution of instructions by the processors 820.
- a basic input/output system 833 (BIOS) containing the basic routines that help to transfer information between elements within computer system 810, such as during start-up, may be stored in the ROM 831.
- RAM 832 may contain data and/or program modules that are immediately accessible to and/or presently being operated on by the processors 820.
- System memory 830 may additionally include, for example, operating system 834, application programs 835, and other program modules 836.
- Application programs 835 may also include a user portal for development of the application program, allowing input parameters to be entered and modified as necessary.
- the operating system 834 may be loaded into the memory 830 and may provide an interface between other application software executing on the computer system 810 and hardware resources of the computer system 810. More specifically, the operating system 834 may include a set of computer-executable instructions for managing hardware resources of the computer system 810 and for providing common services to other application programs (e.g., managing memory allocation among various application programs). In certain example embodiments, the operating system 834 may control execution of one or more of the program modules depicted as being stored in the data storage 840.
- the operating system 834 may include any operating system now known or which may be developed in the future including, but not limited to, any server operating system, any mainframe operating system, or any other proprietary or non-proprietary operating system.
- the computer system 810 may also include a disk/media controller 843 coupled to the system bus 821 to control one or more storage devices for storing information and instructions, such as a magnetic hard disk 841 and/or a removable media drive 842 (e.g., floppy disk drive, compact disc drive, tape drive, flash drive, and/or solid state drive).
- Storage devices 840 may be added to the computer system 810 using an appropriate device interface (e.g., a small computer system interface (SCSI), integrated device electronics (IDE), Universal Serial Bus (USB), or FireWire).
- Storage devices 841, 842 may be external to the computer system 810.
- the computer system 810 may also include a field device interface 865 coupled to the system bus 821 to control a field device 866, such as a device used in a production line.
- the computer system 810 may include a user input interface or GUI 861, which may comprise one or more input devices, such as a keyboard, touchscreen, tablet and/or a pointing device, for interacting with a computer user and providing information to the processors 820.
- the computer system 810 may perform a portion or all of the processing steps of embodiments of the invention in response to the processors 820 executing one or more sequences of one or more instructions contained in a memory, such as the system memory 830. Such instructions may be read into the system memory 830 from another computer readable medium of storage 840, such as the magnetic hard disk 841 or the removable media drive 842.
- the magnetic hard disk 841 and/or removable media drive 842 may contain one or more data stores and data files used by embodiments of the present disclosure.
- the data store 840 may include, but are not limited to, databases (e.g., relational, object-oriented, etc.), file systems, flat files, distributed data stores in which data is stored on more than one node of a computer network, peer-to-peer network data stores, or the like.
- the data stores may store various types of data such as, for example, skill data, sensor data, or any other data generated in accordance with the embodiments of the disclosure.
- Data store contents and data files may be encrypted to improve security.
- the processors 820 may also be employed in a multi-processing arrangement to execute the one or more sequences of instructions contained in system memory 830.
- hard-wired circuitry may be used in place of or in combination with software instructions. Thus, embodiments are not limited to any specific combination of hardware circuitry and software.
- the computer system 810 may include at least one computer readable medium or memory for holding instructions programmed according to embodiments of the invention and for containing data structures, tables, records, or other data described herein.
- the term “computer readable medium” as used herein refers to any medium that participates in providing instructions to the processors 820 for execution.
- a computer readable medium may take many forms including, but not limited to, non-transitory, non-volatile media, volatile media, and transmission media.
- Non-limiting examples of non-volatile media include optical disks, solid state drives, magnetic disks, and magneto-optical disks, such as magnetic hard disk 841 or removable media drive 842.
- Non-limiting examples of volatile media include dynamic memory, such as system memory 830.
- Non-limiting examples of transmission media include coaxial cables, copper wire, and fiber optics, including the wires that make up the system bus 821.
- Transmission media may also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.
- Computer readable medium instructions for carrying out operations of the present disclosure may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, statesetting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++ or the like, and conventional procedural programming languages, such as the "C" programming language or similar programming languages.
- the computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
- the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
- electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present disclosure.
- the computing environment 800 may further include the computer system 810 operating in a networked environment using logical connections to one or more remote computers, such as remote computing device 880.
- the network interface 870 may enable communication, for example, with other remote devices 880 or systems and/or the storage devices 841, 842 via the network 871.
- Remote computing device 880 may be a personal computer (laptop or desktop), a mobile device, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to computer system 810.
- computer system 810 may include modem 872 for establishing communications over a network 871, such as the Internet.
- Modem 872 may be connected to system bus 821 via user network interface 870, or via another appropriate mechanism.
- Network 871 may be any network or system generally known in the art, including the Internet, an intranet, a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), a direct connection or series of connections, a cellular telephone network, or any other network or medium capable of facilitating communication between computer system 810 and other computers (e.g., remote computing device 880).
- the network 871 may be wired, wireless or a combination thereof. Wired connections may be implemented using Ethernet, Universal Serial Bus (USB), RJ-6, or any other wired connection generally known in the art.
- Wireless connections may be implemented using Wi-Fi, WiMAX, and Bluetooth, infrared, cellular networks, satellite or any other wireless connection methodology generally known in the art. Additionally, several networks may work alone or in communication with each other to facilitate communication in the network 871.
- various program module(s), script(s), plug-in(s), Application Programming Interface(s) (API(s)), or any other suitable computer-executable code hosted locally on the computer system 810, the remote device 880, and/or hosted on other computing device(s) accessible via one or more of the network(s) 871 may be provided to support functionality provided by the program modules, applications, or computer-executable code depicted in the figures and/or additional or alternate functionality.
- functionality may be modularized differently such that processing described as being supported collectively by the collection of program modules depicted in the figures may be performed by a fewer or greater number of modules, or functionality described as being supported by any particular module may be supported, at least in part, by another module.
- program modules that support the functionality described herein may form part of one or more applications executable across any number of systems or devices in accordance with any suitable computing model such as, for example, a client-server model, a peer-to-peer model, and so forth.
- any of the functionality described as being supported by any of the program modules depicted in the figures may be implemented, at least partially, in hardware and/or firmware across any number of devices.
- the computer system 810 may include alternate and/or additional hardware, software, or firmware components beyond those described or depicted without departing from the scope of the disclosure. More particularly, it should be appreciated that software, firmware, or hardware components depicted as forming part of the computer system 810 are merely illustrative and that some components may not be present or additional components may be provided in various embodiments. While various illustrative program modules have been depicted and described as software modules stored in system memory 530, it should be appreciated that functionality described as being supported by the program modules may be enabled by any combination of hardware, software, and/or firmware. It should further be appreciated that each of the above-mentioned modules may, in various embodiments, represent a logical partitioning of supported functionality.
- This logical partitioning is depicted for ease of explanation of the functionality and may not be representative of the structure of software, hardware, and/or firmware for implementing the functionality. Accordingly, it should be appreciated that functionality described as being provided by a particular module may, in various embodiments, be provided at least in part by one or more other modules. Further, one or more depicted modules may not be present in certain embodiments, while in other embodiments, additional modules not depicted may be present and may support at least a portion of the described functionality and/or additional functionality. Moreover, while certain modules may be depicted and described as sub-modules of another module, in certain embodiments, such modules may be provided as independent modules or as sub-modules of other modules.
- any operation, element, component, data, or the like described herein as being based on another operation, element, component, data, or the like can be additionally based on one or more other operations, elements, components, data, or the like. Accordingly, the phrase “based on,” or variants thereof, should be interpreted as “based at least in part on.”
- each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s).
- the functions noted in the block may occur out of the order noted in the Figures.
- two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
La présente divulgation concerne un système qui peut effectuer une compression de données légère qui optimise une base de données intégrée pour un débit à haute performance, une faible utilisation de mémoire et des temps d'interrogation/réponse rapides. La compression et la décompression intégrées peuvent être effectuées sans bibliothèques ni ramifications, de façon à définir une compression sans bibliothèque et sans ramification avec un comportement d'exécution hautement prévisible pour la gestion de données de cycle de vie.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2022/075452 WO2024043932A1 (fr) | 2022-08-25 | 2022-08-25 | Compression intégrée pour la gestion d e données de cycle de vie de produit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2022/075452 WO2024043932A1 (fr) | 2022-08-25 | 2022-08-25 | Compression intégrée pour la gestion d e données de cycle de vie de produit |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024043932A1 true WO2024043932A1 (fr) | 2024-02-29 |
Family
ID=83689486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2022/075452 WO2024043932A1 (fr) | 2022-08-25 | 2022-08-25 | Compression intégrée pour la gestion d e données de cycle de vie de produit |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024043932A1 (fr) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020197526A1 (fr) * | 2019-03-22 | 2020-10-01 | Siemens Aktiengesellschaft | Compression profonde intégrée pour données chronologiques |
-
2022
- 2022-08-25 WO PCT/US2022/075452 patent/WO2024043932A1/fr unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020197526A1 (fr) * | 2019-03-22 | 2020-10-01 | Siemens Aktiengesellschaft | Compression profonde intégrée pour données chronologiques |
Non-Patent Citations (1)
Title |
---|
WANG MIAO-QIONG ET AL: "Survey of Time Series Data Processing in Industrial Internet", 2019 IEEE INTERNATIONAL CONFERENCES ON UBIQUITOUS COMPUTING & COMMUNICATIONS (IUCC) AND DATA SCIENCE AND COMPUTATIONAL INTELLIGENCE (DSCI) AND SMART COMPUTING, NETWORKING AND SERVICES (SMARTCNS), IEEE, 21 October 2019 (2019-10-21), pages 736 - 741, XP033705778, DOI: 10.1109/IUCC/DSCI/SMARTCNS.2019.00151 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7314186B2 (ja) | プラント通信システム、プラント制御・通信システム、プロセスプラント通信システム、データを処理するための方法、及びデータ処理パイプラインを構成する方法 | |
US12056485B2 (en) | Edge computing platform | |
CN109698857B (zh) | 用于自适应工业物联网(iiot)的系统和方法 | |
US10007513B2 (en) | Edge intelligence platform, and internet of things sensor streams system | |
US20230108920A1 (en) | System and method for providing robust artificial intelligence inference in edge computing devices | |
Ku | A study on prediction model of equipment failure through analysis of big data based on RHadoop | |
EP3667439A1 (fr) | Prédictions pour un processus dans une installation industrielle | |
US20220190842A1 (en) | Embedded deep compression for time-series data | |
Parto et al. | Cyber-physical system implementation for manufacturing with analytics in the cloud layer | |
WO2024043932A1 (fr) | Compression intégrée pour la gestion d e données de cycle de vie de produit | |
US20230359864A1 (en) | Large-scale matrix operations on hardware accelerators | |
US20240076953A1 (en) | Autonomous Valve System | |
US20230384746A1 (en) | Original equipment manufacturer (oem) data application programming interface (api) to model repository | |
Pullabhotla et al. | Adaptive pre-processing and regression of weather data | |
US20230418243A1 (en) | Data scientist views in integrated design environments | |
EP4155853A1 (fr) | Découverte et recommandations de relation variable pour environnements d'automatisation industrielle | |
EP4155849A1 (fr) | Bibliothèque d'actifs de modèles et moteur de recommandation pour environnements d'automatisation industrielle | |
EP4377756A1 (fr) | Orchestrateur de fonction d'ingénierie de code faible | |
WO2024043888A1 (fr) | Détection, prédiction et correction en temps réel de la dérive d'un modèle d'apprentissage automatique dans la hiérarchie des actifs sur la base de données de séries temporelles | |
Grabski | Multi-State Semi-Markov Model of the Operation Reliability |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22786862 Country of ref document: EP Kind code of ref document: A1 |