DE102007040675A1 - System and method for the lossless processing of process values of a technical plant or a technical process - Google Patents
System and method for the lossless processing of process values of a technical plant or a technical process Download PDFInfo
- Publication number
- DE102007040675A1 DE102007040675A1 DE102007040675A DE102007040675A DE102007040675A1 DE 102007040675 A1 DE102007040675 A1 DE 102007040675A1 DE 102007040675 A DE102007040675 A DE 102007040675A DE 102007040675 A DE102007040675 A DE 102007040675A DE 102007040675 A1 DE102007040675 A1 DE 102007040675A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- raw data
- history server
- format
- values
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0259—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
- G05B23/0264—Control of logging system, e.g. decision on which data to store; time-stamping measurements
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- General Factory Administration (AREA)
Abstract
Die Erfindung bezieht sich auf ein System und Verfahren zur verlustfreien Verarbeitung von Prozesswerten, welche in einem Prozessleitsystem einer technischen Anlage oder eines technischen Prozesses integriert sind, dadurch gekennzeichnet, dass die Prozesswerte als Rohdaten mittels einer Erfassungseinheit erfasst werden. Aus den erfassten Rohdaten werden nach Zuordnung einer physikalischen Einheit und eines Messbereiches zum jeweiligen Prozesswert archivierbare Daten erzeugt. Die in einem vorgegebenen Toleranzband befindlichen archivierbaren Daten werden mittels einer Archivierungfunktion ausgewählt und in einem Rohdatenformat in einem Historienserver gespeichert. Die im Rohdatenformat vorliegenden ausgewählten Daten werden mittels eines vom Historienserver bereitgestellten Codiermoduls zeitverzögert zu ihrer Speicherung im Historienserver fortlaufend komprimiert. Nach einer Anforderung vom Prozessleitsystem werden die komprimierten Daten mittels eines vom Historienserver bereitgestellten Decodiermoduls dekomprimiert, und die vom Decodiermodul bereitgestellten dekomprimierten Daten sowie weitere verfügbare Daten im Rohdatenformat werden einem Darstellungsmodul zur weiteren Verarbeitung übermittelt.The invention relates to a system and method for the lossless processing of process values, which are integrated in a process control system of a technical plant or a technical process, characterized in that the process values are detected as raw data by means of a detection unit. Archived data are generated from the acquired raw data after assigning a physical unit and a measuring range to the respective process value. The archivable data located in a predetermined tolerance band are selected by means of an archiving function and stored in a raw data format in a history server. The selected data present in the raw data format is continuously compressed by means of a coding module provided by the history server for its storage in the history server. Following a request from the process control system, the compressed data is decompressed by means of a decoding module provided by the history server, and the decompressed data provided by the decoding module as well as other available raw data format data are transmitted to a presentation module for further processing.
Description
Die Erfindung bezieht sich auf ein Verfahren zur verlustfreien Verarbeitung von Prozesswerten, auch als Prozessmesswerte oder Prozessdaten bezeichnet, eines technischen Prozesses oder einer technischen Anlage, welches insbesondere in der Prozessautomatisierung eingesetzt wird. Weiterhin betrifft die Erfindung ein System zur Ausführung des Verfahrens.The The invention relates to a method for lossless processing of process values, also referred to as process measured values or process data, a technical process or a technical installation which is used especially in process automation. Farther The invention relates to a system for carrying out the method.
Zur Langzeitarchivierung von Prozesswerten, auch als Prozessmesswerten oder Prozessdaten bezeichnet, werden die Daten als Messreihen, auch als Messwerthistorien oder Prozesswerthistorien bezeichnet, in einem sogenannten Historienserver abgelegt bzw. gespeichert. Die Archivierung der Daten ist dabei sehr speicherintensiv. Zum Auslesen der gespeicherten Daten ist demzufolge ein Massenspeicher mit einem sehr großen Speicherbereich erforderlich und bei der Weiterverarbeitung der ausgelesenen Daten muss eine große Anzahl von Daten bewegt werden. Der zu speichernde Datenbestandes setzt sich dabei aus dem Produkt aus Anzahl der Signale, deren zu erwartenden Änderungsgeschwindigkeit und deren Aufzeichnungsdauer zusammen.to Long-term archiving of process values, also as process measured values or process data, the data is called a series of measurements, too referred to as measured value histories or process value histories, in one stored or stored so-called history server. The archiving The data is very memory intensive. For reading the stored Data is therefore a mass storage with a very large storage area required and during further processing of the data read out must be a large number to be moved by data. The database to be saved is set this is the product of the number of signals whose expected rate of change and their recording time together.
Der vom Betreiber der technischen Anlage benötigte Datenbestand aus dem Prozess, welcher zur Archivierung gespeichert werden soll, ist in den letzten Jahren stark gestiegen und es besteht der Wunsch die Daten einerseits verlustfrei zu speichern und andererseits diese mit einer möglichst hohen Geschwindigkeit wieder zu lesen. Diese Wünsche lassen sich mit einer einfachen Speicherung im unkomprimierten Rohformat erfüllen. Dem steht nun aber der Nachteil gegenüber, dass mit diesem Prinzip der Rohwertspeicherung der zur Verfügung stehende Massenspeicher nicht optimal genutzt wird. Der zu speichernde Rohdatenbestand liegt gegenwärtig im Bereich von 0,5 bis ca. 5 Terabyte, wobei die Tendenz, bezogen auf den zu speichernden Datenbestand, weiter steigend ist.Of the required by the operator of the technical system data from the Process to be stored for archiving is in The past few years have risen sharply and there is a desire for the data on the one hand to save losses and on the other hand with a preferably read high speed again. These wishes can be combined with a easy storage in uncompressed raw format. the But now there is the disadvantage that with this principle the raw value storage of the available mass storage not optimally used. The raw data stock to be stored is currently in the Range from 0.5 to about 5 terabytes, with the trend being based on the data to be stored is still rising.
Obwohl relativ günstige Massenspeicher zur Ablage der aus dem Prozess oder der Anlage anfallenden Datenmengen zur Verfügung stehen, wird der Einsatz von Kompressionsverfahren zur Ablage großer Datenmengen in der Prozessautomatisierung angestrebt, wobei ein Kompressionsverfahren wünschenswert wäre, welches die Ziele zur verlustfreien Speicherung der Daten und besonders diese Daten mit einer möglichst hohen Geschwindigkeit wieder auszulesen, optimal vereint. Dabei ist ein weniger optimaler Kompressionsfaktor hinnehmbar.Even though relatively cheap Mass storage for storing the costs arising from the process or the system Amounts of data available are the use of compression methods for storing large amounts of data sought in process automation, using a compression method desirable that would be the goals for the lossless storage of the data and especially this data with the highest possible Speed read again, optimally united. There is one less optimal compression factor acceptable.
Zur Datenkompression der aus dem Prozess oder der Anlage anfallenden Datenmengen werden gegenwärtig verlustfreie oder verlustbehafteten Verfahren eingesetzt.to Data compression of the process or plant Datasets are becoming current lossless or lossy methods used.
Bei den bekannten verlustbehafteten Kompressionsverfahren, zu denen BoxCar/Backslope-, Transformationsverfahren zählen, stehen nach der Dekompression die vorab komprimierten Daten mit mehr oder weniger starken Abweichungen bezüglich des Messwertes und des Zeitstempels wieder zur Verfügung.at the known lossy compression method, which BoxCar / Backslope, transformation methods count, stand after decompression the pre-compressed data with more or less pronounced deviations in terms of the measured value and the time stamp available again.
Die
BoxCar/Backslope-, Swinging Door- oder Wavelet-Transformationsverfahren
sind beispielsweise in "
Diese Verfahren bieten eine gute Kompressionsrate, sind aber nicht verlustfrei. Außerdem verlangsamt sich auf Grund der abzuarbeitenden Datenmenge der Lesevorgang erheblich gegenüber dem Auslesen der in nicht-verdichteter Form abgelegten Daten.These Procedures provide a good compression rate but are not lossless. Furthermore slows down due to the amount of data to be processed the reading process considerably opposite reading the data stored in non-compressed form.
Auch
die aus der der verlustfreien Komprimierung bekannten Methoden,
wie die LZW-, LZ77- oder LZ78-Verfahren (hier wird eine Folge von
Zeichen des Originaltextes durch eine Folge von Zeichen eines anderen
Alphabets ersetzt), die beispielsweise in
Bei den sogenannten verlustbehafteten Kompressionsverfahren ist dagegen die Kompressionen der anfallenden Daten mit einem Informationsverlust verbunden, weil sich die ausgelesenen oder dekomprimierten Daten von den ursprünglichen Daten unterscheiden.at the so-called lossy compression method is against it the compression of the accumulated data with a loss of information connected, because the read or decompressed data from the original ones Differentiate data.
Gerade im Umfeld von Prozess- oder Anlageninformationssystemen, welche die archivierten Daten oft als abrechnungsrelevante Basis, beispielsweise wenn also im Büroumfeld möglichst genaue Messungen aus dem Prozessumfeld als Basis für Bilanzierungen dienen, so darf hier kein verlustbehafteter Wert verwendet werden, nutzen oder bezogen auf diese Daten im nachhinein Analysen exakt auf die Abtastzeitpunkte der Prozessdaten zu fahren, sind die vorab beschriebenen verlustbehaftete Verfahren nicht geeignet.Just in the environment of process or plant information systems, which the archived data often as a billing-relevant basis, for example So if in the office environment preferably accurate measurements from the process environment as a basis for balancing serve, no lossy value may be used here, use or related to this data in retrospect analyzes exactly To drive to the sampling times of the process data, the advance lossy methods described are not suitable.
Ein weiterer Nachteil der verlustbehafteten Verfahren beruht darauf, dass die Dekompression der Daten, auch als Entpacken bezeichnet, sehr rechenintensiv ist. Bei den großen zu verarbeitenden Datenmengen wirkt sich eine Kompression daher eher hinderlich aus, da die Dekompression der Daten einfach lange dauert.One Another disadvantage of the lossy method is based on that the decompression of the data, also known as unpacking, is very computationally intensive. For the large amounts of data to be processed acts Therefore, a compression is more of a hindrance, because the decompression the data just takes a long time.
Der Erfindung liegt demgemäß die Aufgabe zugrunde, ein Verfahren zur verlustfreien Verarbeitung von Prozesswerten, auch als Prozessmesswerte oder Prozessdaten bezeichnet, eines technischen Prozesses oder einer technischen Anlage sowie ein entsprechendes System zur Ausführung des Verfahrens anzugeben, wodurch vorgenannte Nachteile des Standes der Technik überwunden werden. Mit dem erfindungsgemäßen Verfahren zur Datenkompression soll insbesondere das Entpacken der komprimierten Daten beschleunigt werden. Außerdem ist es im Gegensatz zu den meisten verwendeten Verfahren verlustfrei.Of the Invention is therefore the task underlying, a method for the lossless processing of process values, also referred to as process measurements or process data, a technical Process or a technical installation and a corresponding System for execution specify the method, whereby the aforementioned disadvantages of the prior overcome the technique become. With the method according to the invention for data compression in particular the unpacking of the compressed Data speeds up. Furthermore it is lossless unlike most of the methods used.
Diese Aufgabe wird erfindungsgemäß durch ein Verfahren mit den in Anspruch 1 angegebenen Merkmalen gelöst. Vorteilhafte Ausgestaltungen und Verbesserungen des erfindungsgemäßen Verfahrens sowie ein System zur Ausführung des Verfahrens sind in weiteren Ansprüchen und in der Beschreibung angegeben.These Task is achieved by a method having the features specified in claim 1. advantageous Embodiments and improvements of the method according to the invention as well as a system for execution of the method are in further claims and in the description specified.
Die Erfindung betrifft ein Verfahren, welches die Tatsache einer stets verlustbehafteten Erfassung von digitalisierten Prozesswerten einer technischen Anlage ausnutzt, um in einem nachgeschalteten speziellen verlustfreien Kompressionsverfahren zu einer optimalen Mischung hinsichtlich Komprimierungsrate und Entpackungsgeschwindigkeit von Prozessdaten in einem Prozessleitsystem einer technischen Anlage oder eines technischen Prozesses zu gelangen.The The invention relates to a method which always has the fact of being lossy acquisition of digitized process values of a technical facility exploits to in a downstream special lossless Compression method to an optimal mix in terms of compression rate and unpacking speed of process data in a process control system a technical installation or a technical process.
Erfindungsgemäß werden die aus der technische Anlage oder dem technischen Prozess bereitgestellten Prozesswerte als Rohdaten mittels einer Erfassungseinheit erfasst, und den erfassten Rohdaten werden jeweils eine physikalische Einheit und ein Messbereich zugeordnet. Die so erzeugten archivierbaren Rohdaten werden dahingehend geprüft, ob sie innerhalb eines vorgegebenen Toleranzbandes liegen. Mittels einer Archivierungsfunktion werden die innerhalb des vorgegebenen Toleranzbandes befindlichen archivierbaren Daten ausgewählt und in ihrem ursprünglichen, also noch nicht komprimierten Datenformat, auch als Rohdatenformat bezeichnet, als ausgewählte Daten in einem Historienserver gespeichert.According to the invention those provided by the technical facility or the technical process Process values recorded as raw data by means of a detection unit, and the acquired raw data becomes a physical unit, respectively and a measuring range assigned. The archivable generated in this way Raw data is checked whether they are within a specified tolerance band. through An archiving function will be within the specified Tolerance band located archivable data selected and in their original, ie not yet compressed data format, also called raw data format, as selected Data stored in a history server.
Der Historienserver ist eine spezielle Datenbank mit Echtzeitfunktionen zur Sammlung von Prozess- oder Messdaten zur Langzeitspeicherung und zur Archivierung der gesammelten Daten, wobei die gesammelten Daten in festgelegten Zeitabständen auf einer Festplatte eines Protokollspeichers gespeichert werden.Of the History Server is a special database with real-time functions for the collection of process or measurement data for long-term storage and to archive the collected data, with the collected Data at fixed intervals stored on a hard disk of a log memory.
Die im Rohdatenformat vorliegenden ausgewählten Daten werden mittels eines vom Historienserver bereitgestellten Codiermoduls zeitverzögert zu ihrer Speicherung im Historienserver komprimiert, wobei aus den komprimierten Daten eine komprimierte Datei erzeugt wird.The in the raw data format selected data are using a time-delayed provided by the history server Codiermoduls their storage in the history server compressed, taking from the compressed data is generated a compressed file.
Um die Daten der komprimierten Datei dem Prozessleitsystem zur weiteren Verarbeitung, beispielsweise zur Anzeige des Verlaufes eines Prozesswertes über einen vorgegebenen Zeitbereich, zur Verfügung zu stellen, werden die Daten der komprimierte Datei nach einer Anforderung mittels eines vom Historienserver bereitgestellten Decodiermodul dekomprimiert. Die Anforderung zum Dekomprimieren der komprimierten Datei und zur Bereitstellung weiterer verfügbarer Daten im Rohdatenformat wird vom Prozessleitsystem automatisch oder ereignisabhängig bereitgestellt.Around the data of the compressed file to the process control system for further Processing, for example, to display the course of a process value via a given time range, are the Data of the compressed file after a request by means of a decoding module provided by the history server. The request to decompress the compressed file and to Provide more available Data in raw data format is automatically or by the process control system event driven provided.
Die vom Decodiermodul bereitgestellten dekomprimierten Daten sowie weitere während der Erzeugung der komprimierten Datei aus dem Prozess oder von der Anlage eingelesene Daten im Rohdatenformat werden, vorzugsweise einem Darstellungsmodul, zur weiteren Verarbeitung übermittelt.The decompressed data provided by the decoder module and others while the creation of the compressed file from the process or from the Plant read data in the raw data format, preferably a presentation module, transmitted for further processing.
Mit dem erfindungsgemäßen Verfahren wird insbesondere die Langzeitarchivierung von Prozesswerthistorien, die aus den von fortlaufend erfassten Prozesswerten gebildet werden, dahingehend verbessert, dass die Prozesswerte nicht nur verlustfrei komprimiert werden sondern auch eine möglichst gute Packungsdichte der komprimierten Daten erreicht wird. Im Gegensatz zu den verlustbehafteten Verfahren sind alle abrechnungsrelevanten Daten exakt ohne einen Verlust ihrer Originalinformation wiederherstellbar.With the method according to the invention In particular, the long-term archiving of process value histories, which are formed from the continuously recorded process values, improved so that the process values are not only compressed lossless but also one as possible good packing density of the compressed data is achieved. In contrast All loss-related procedures are all billing-relevant Data recoverable without loss of original information.
Die Speicherung der Rohdaten in ihrem ursprünglichen nicht komprimierten Datenformat im Historienserver erfolgt zeitlich gesplittet in jeweils eigenständigen Dateien pro Messwert, typischerweise in sogenannten zwei Tages-Dateien eine ohne Komprimierung der Rohdaten.The Storage of raw data in its original uncompressed Data format in the history server is temporally split in each case independent Files per metric, typically in so-called two-day files one without compression of the raw data.
Im folgenden wird die Speicherung der Rohdaten im Historienserver mittels spezieller Techniken beschrieben.in the The following is the storage of raw data in the history server means described special techniques.
In einem Historienserver sind für tausende von verschiedenen Messpunkten, auch als Signale bezeichnet, jeweils die historischen Messwertreihen zu speichern. Indem diese historischen Messwertreihen eines Messpunktes wie einzelne Teildatenbanken behandelt werden, wird eine effektive Speicherung der historische Messwertreihen in einem Standard-Filesystem folgendermaßen ermöglicht: Pro Signal-Teil-Datenbank oder Messwertreihe eines Signals) wird ein eigener Ordner im Filesystem genutzt. Die Signal-Teil-Datenbänke sind so über eine beliebige Anzahl von Festplatten verteilbar, wodurch eine noch höhere Performance und zusätzliche Redundanz-Aspekte erreicht werden.In a history server are for thousands of different measuring points, also called signals, each store the historical measured value series. By doing this historical measured value series of a measuring point like individual partial databases will be treated effectively storage of the historical Measured value series in a standard file system are enabled as follows: Per signal part database or measured value series of a signal) a separate folder used in the file system. The signal sub-databases are so over Any number of disks can be redistributed, resulting in one more higher Performance and additional Redundancy aspects be achieved.
Weiterhin ist die Einführung eines Kurzeit-Schreib/Lesecaches im RAM für jedes Signal vorgesehen. Der Kurzeit-Schreib/Lesecache ist bereits für die interne SQL-Maschine „sichtbar", wodurch die Werte für Clientanfragen verzögerungsfrei verfügbar sind.Farther is the introduction of a short-term write / read cache in RAM for each signal. Of the Short-term write / read cache is already "visible" to the internal SQL machine, which causes the values for client requests delay available are.
Durch die Einführung eines Cache-Flush-Prozesses wird eine sogenannte „festglatten-freundliche" Entleerung der Kurzeit Schreib/Lesecaches gesteuert. Dazu bewirkt der Cache-Flush-Prozess das komplette Zurückschreiben des Cache-Inhaltes in einen Hauptspeicher. Danach steht der nun leere Signal-Cache wieder zur Erfassung der nächsten Werte zur Verfügung.By the introduction A cache flush process becomes a so-called "crisp-friendly" dump of spa time Controlled write / read caches. This is done by the cache flush process the complete writing back of the cache contents into a main memory. After that is the now empty signal cache again to capture the next Values available.
Der Cache-Flush-Prozess steuert weiterhin eine individuelle dynamische Cache-Größe in Abhängigkeit von der Signalgeschwindigkeit. Beispielsweise werden den sogenannten schnellen Signalen viele Werte pro Zeiteinheit zugeordnet. Diesen Signalen werden größere Kurzzeitcaches zugeteilt. Langsame Signale hingegen geben dabei nach und nach ihren Cache-Speicher an schnelle Signale ab.Of the Cache flush process continues to control an individual dynamic Cache size depending from the signal speed. For example, the so-called fast signals are assigned many values per unit of time. this Signals become larger short-term caches allocated. Slow signals, on the other hand, gradually give their share Cache memory to fast signals.
Der somit zeit- und füllgrad-gesteuerte Cache-Flush-Prozess arbeitet so, dass möglichst wenige Datenzugriffe notwendig sind, bzw. der Datenzugriff möglichst gleichmäßig verteilt erfolgt. Dadurch wird in vorteilhafter Weise erreicht, dass auch bei Standard-Filesystemen, wie dem New Technology File System (NTFS), eine optimale Performance beim Lesen und Schreiben der Daten gegeben ist.Of the thus time- and degree-controlled Cache flushing works so that as few data accesses are necessary, or the data access distributed as evenly as possible he follows. This is achieved in an advantageous manner, that too in standard file systems, such as the New Technology File System (NTFS), a optimal performance when reading and writing the data given is.
Das mittels des Codiermoduls ausgeführte Komprimierverfahren arbeitet unabhängig in einem nebenläufigen Prozess und kodiert verzögert zur eigentlichen Archivierung die Rohdaten, dass heißt die Prozesswerte werden erst im Rohdatenformat gespeichert und nach und nach mit einer konfigurierbaren Verzögerung in diesem nebenläufigen Prozess in ein komprimiertes Format umgewandelt, wobei aus den komprimierten Daten eine komprimierte Datei erzeugt wird.The executed by means of the coding module Compression method works independently in a concurrent process and coded delayed for the actual archiving the raw data, that is the process values are first stored in raw data format and gradually with a configurable delay in this concurrent Process is converted into a compressed format, taking from the compressed Data is generated a compressed file.
Der sich daraus ergebende Vorteil beruht darauf, dass die zeitliche Verzögerung der Kompression der Rohdaten so steuerbar ist, dass beispielsweise über einen längeren Zeitraum mit Rohwerten gearbeitet wird, weil typischerweise in diesem Zeitraum vermehrt Zugriffe angefordert werden, beispielsweise bei der Erstellung von Tagesreports und Trends, und hier also ohne Decodierung und damit schnell auf das Speichermedium zugegriffen werden kann.Of the The resulting benefit is due to the fact that the temporal delay the compression of the raw data is controlled so that, for example, via a longer Period worked with raw values, because typically in this Period increased requests for access, for example at the creation of daily reports and trends, and here without decoding and so that the storage medium can be accessed quickly.
In vorteilhafter Weise ist die zeitliche Verzögerung der Kompression der Rohdaten individuell für einzelne Prozesswerte oder Gruppen bzw. Klassen von Prozesswerten einstellbar. Beispielsweise werden eine Klasse von abrechnungsrelevanten Daten über einige Jahre im Rohdatenformat gehalten, bevor die Komprimierung dieser Daten gestartet wird.In Advantageously, the time delay of the compression of the Raw data individually for individual process values or groups or classes of process values adjustable. For example, become a class of billing-relevant Data about held in raw data format for a few years before compression this data is started.
Aus
obiger Kenntnis heraus ist nun ein weiterer nebenläufiger Prozess
(Modul KompressDelayKonfigurator) mit der automatischen Ermittlung
der Kompressionsverzögerungen
beauftragt und läuft
nach folgendem Prinzip ab:
Der Historienserver stellt intern
Zugriffsstatistiken für
jedes Signal bereit. Diese Zugriffsstatistiken beinhalten beispielsweise,
wer im Bezug zur aktuellen Uhrzeit mit welchen Historienzeiträumen auf
die einzelnen Zeitreihen zugegriffen hat. Auf der Basis dieser Daten
ermittelt das Modul KompressDelayKonfigurator eine optimale Verzugszeit.From the above knowledge, another concurrent process (Modul KompressDelayKonfigurator) is now assigned with the automatic determination of the compression delays and is based on the following principle:
The history server internally provides access statistics for each signal. These access statistics include, for example, who accessed the individual time series with which history periods in relation to the current time. On the basis of this data, the module KompressDelayKonfigurator determines an optimal delay time.
Ein
weiterer Vorteil der Erfindung beruht auf einem schnell ablaufenden
Entpackungsalgorithmus der komprimierten Daten, welcher der Umkehrung
des in
Das System zur Ausführung des erfindungsgemäßen Verfahrens ist dem Anspruch 7 zu entnehmen.The System for execution the method according to the invention is to be taken from claim 7.
Das erfindungsgemäße System zur verlustfreien Verarbeitung von Prozesswerten ist in einem Prozessleitsystem einer technischen Anlage oder eines technischen Prozesses integriert und umfasst eine Erfassungseinrichtung, welche die aus dem Prozess oder der Anlage bereitgestellten Prozesswerte als Rohdaten erfasst. Die Erfassungseinheit wirkt mit einer Verarbeitungseinheit zusammen, die aus den erfassten Rohdaten nach Zuordnung einer physikalischen Einheit und eines Messbereiches zum jeweiligen Prozesswert archivierbare Daten erzeugt.The inventive system for the lossless processing of process values is in a process control system integrated into a technical system or a technical process and comprises a detection device, which is the one from the process or the process values provided as raw data. The detection unit interacts with a processing unit, from the acquired raw data after assignment of a physical Unit and a measuring range for the respective process value can be archived Data generated.
Die Verarbeitungseinheit wirkt mit einer Archivierungsfunktion zusammen, welche prüft, ob die archivierbaren Daten ein vorgegebenes Toleranzband überschreiten. Die Archivierungsfunktion prüft somit jeden eingehenden Prozesswert, ob dieser das vorgegebene Toleranzband überschreitet. Weiterhin wählt die Archivierungsfunktion die innerhalb des Toleranzbandes befindlichen archivierbaren Daten aus und speichert die ausgewählten Daten in einem Rohdatenformat ohne eine Komprimierung, dass heißt, jeder eingehende Prozesswert, der innerhalb des vorgegebenen Toleranzbandes liegt, wird als Rohwert, beispielsweise in den 2-Tagesdateien im Rohdatenformat, umfassend einen Zeitstempel, einen Wert im IEEE-Double-Format und einen Status im 16 Bit Integer Format (Dateityp, der ganzzahlige Werte speichert) in einem Historienserver gespeichert.The Processing unit interacts with an archiving function, which checks, whether the archivable data exceeds a specified tolerance band. The archiving function checks Thus, every incoming process value, whether this exceeds the specified tolerance band. Continue to dial the archiving function is within the tolerance band archivable data and stores the selected data in a raw data format without compression, that is, everyone incoming process value within the specified tolerance band is included as raw value, for example in the 2-day files in raw data format a timestamp, an IEEE double-format value, and a status in 16-bit integer format (file type that stores integer values) stored in a history server.
Der Historienserver weist ein Codiermodul zur Komprimierung der ausgewählten Daten auf. Das Codiermodul komprimiert fortlaufend die im Rohdatenformat vorliegenden ausgewählten Daten zeitverzögert zu ihrer Speicherung im Historienserver.Of the History server has a coding module for compressing the selected data on. The coding module continuously compresses the data in raw data format present selected Data delayed for their storage in the history server.
Der entkoppelt und individuell verzögert ablaufende Codierprozess im Historien-Server komprimiert nun nach und nach die im Rohdatenformat gespeicherten Daten.Of the decoupled and individually delayed expiring coding process in the history server now compresses gradually the data stored in the raw data format.
Nach einer automatischen oder ereignisabhängigen Anforderung werden die komprimierten Daten direkt einem Decodiermodul zur Dekomprimierung zugeführt und die dekomprimierten Daten sowie weitere verfügbare Daten im Rohdatenformat werden einem Darstellungsmodul, beispielsweise einem Modul zur Trenddarstellung zur weiteren Verarbeitung und/oder Anzeige bereitstellt.To an automatic or event - dependent request, the compressed data directly to a decoding module for decompression supplied and the decompressed data as well as other available data in raw data format become a presentation module, such as a module for trend display for further processing and / or display.
Das erfindungsgemäße System und Verfahren werden vorzugsweise zur Langzeitarchivierung von Messreihen in der Automatisierungstechnik eingesetzt.The inventive system and methods are preferably for the long-term archiving of measurement series used in automation technology.
Anhand
des in den
Es zeigen:It demonstrate:
In
Das
erfindungsgemäße System
umfasst eine Erfassungseinrichtung
Eine
im erfindungsgemäßen System
integrierte Archivierungsfunktion
Die
nachfolgende Tabelle 1 zeigt den Aufbau der Rohdatendatei, wobei
die Anzahl der Bytes dem Produkt aus der Anzahl der Prozesswerte
mit 18 Bytes pro Messwert entspricht. Jede Datei enthält im nachfolgenden
Beispiel die Werte von maximal zwei Tagen. Tabelle 1
Die
Speicherung der vom technischen Prozess oder der technischen Anlage
bereitgestellten Daten als Rohdaten erfolgt zeitlich gesplittet
in eigenständigen
Dateien pro Messpunkt in einem Historienserver
Im
Historienserver
Das
Codiermodul
Somit
werden beim Lesen der Daten aus dem Codiermodul
Ausgehend von der vorab beschriebenen Struktur bzw. dem Inhalt der Rohdateien und der Entstehungskette der Daten werden die nachfolgend beschriebenen Kodiermethoden zur Komprimierung der Rohdaten.outgoing from the structure described above or the content of the raw files and the source chain of the data will be described below Coding methods for compressing the raw data.
Die
in einem ersten Schritt
Somit
werden erfindungsgemäß in einem
zweiten Schritt
In
einem dritten Schritt
In
einem vierten Schritt
Beim
Packen des Zeitstempelverzeichnisses in einem fünften Schritt
Die Lauflängenkodierung ist ein sehr einfacher verlustfreier Kommpressionsalgorithmus für die in digitaler Form vorliegenden Daten und ist besonders gut geeignet, Wiederholungen oder Sequenzen von gleichen Werten verkürzt darzustellen. Liegt eine Wiederholung vor, wird die Anzahl der Wiederholungen sowie der wiederholte Wert gespeichert.The Run Length Encoding is a very simple lossless compression algorithm for the in digital form and is particularly well suited Repeats or sequences of equal values shortened. If there is a repetition, the number of repetitions will be and the repeated value saved.
In einer Ausgestaltung der Erfindung werden vorab die Zeiteinheiten als Differenzen kodiert. Je langsamer ein Signal ist, also je weniger Änderungen das Signal aufweist, umso größer und verschiedener sind die Zeitdifferenzen zwischen den Werten.In An embodiment of the invention beforehand the time units coded as differences. The slower a signal is, so the fewer changes has the signal, the larger and different are the time differences between the values.
Folglich
wächst
das Zeitstempelverzeichnis obwohl eine geringere Anzahl von Werten
bzw. Daten für ein
entsprechendes Signal vorliegen. Bedingt durch den erhöhten Bedarf
des Zeitstempelverzeichnisses zusammen mit den zu kodierenden Indices
an Daten für
die Zeiteinheiten werden die Zeiteinheiten sofort als Zeitdifferenzen
kodiert. Somit wird in vorteilhafter Weise die Bearbeitung eines
Verzeichnisses eingespart, indem die benötigten Bits für die Kodierung
aus der maximalen Zeitdifferenz bestimmt werden. Das Codiermodul
In
einem sechsten Schritt
Bei der Statusinformation (16 Bit Integer) wird in der Regel ebenfalls die vorab beschriebene Lauflängenkodierung durchgeführt.at The status information (16-bit integer) is also usually the run-length coding described above carried out.
In
einem weiteren Schritt
Die Shannon-Fano-Kodlerung und Huffman-Kodierung beruhen dabei auf einer Art der Entropiekodierung ist, die jedem einzelnen Zeichen eines Textes eine unterschiedlich lange Folge von Bits zuordnet. Da eine bestimmte Mindestanzahl von Bits notwendig ist, um alle Zeichen voneinander zu unterscheiden, kann die Anzahl der Bits, die den Zeichen zugeordnet werden, nicht unbegrenzt klein werden.The Shannon-Fano codification and Huffman coding are based on one Type of entropy coding is the one each character of a Text assigns a different length sequence of bits. Because a certain Minimum number of bits is necessary to keep all characters from each other To differentiate, the number of bits allocated to the characters can be will not be infinitely small.
Das nunmehr verwendete konstante Kodierschema, bei dem immer gleich viele Bits für einen Index verwendet werden, hat zudem den Vorteil, dass das Kodierschema wesentlich schneller entpackt wird, da kein Binärbaum durchlaufen werden muss, um den entsprechenden Index zu bilden.The now used constant coding scheme in which always the same many bits for An index also has the advantage that the coding scheme is essential is unpacked faster because no binary tree has to be traversed, to form the corresponding index.
Die
so in einem letzten Schritt
Die so erzielte Kompression verringert die Rohdaten von ca. 100% auf ca. 18 ... 32 %, was einem Faktor von 3 bis 5 entspricht, mit dem die Rohdatenmenge verringert wird. Berücksichtigt man die durch das Toleranzband schon vorher erzielte Komprimierung, welche ca. einem Faktor von 2 bis 6 bei der Verringerung der Rohdatenmenge entspricht, ergibt eine maximale Gesamtkomprimierung um ca. das Dreißigfache (ca. 5·6 = 30) der ursprünglich vorhandenen Rohdatenmenge, wobei beispielhafte mittlere erreichbare Werte bei einem Faktor 8 liegen.The so achieved compression reduces the raw data of about 100% about 18 ... 32%, which corresponds to a factor of 3 to 5, with the the amount of raw data is reduced. Considering the by the Tolerance band already achieved compression, which approx Factor of 2 to 6 when reducing the amount of raw data, gives a maximum total compression of about thirty times (about 5 · 6 = 30) of the original existing raw data amount, with exemplary average achievable Values are at a factor of 8.
Ein
wesentlicher Vorteil der Erfindung beruht darauf, dass obwohl das
vorgeschaltete Toleranzband zwar eine verlustbehaftete Komprimierung
darstellt, die abrechnugsrelevanten Daten eindeutig wiederherstellbar
sind, da die vorabgenannten Verfahrensschritte
Um
die Daten der komprimierten Datei dem Anlageninformationssystem
zur weiteren Verarbeitung, beispielsweise zur Anzeige des Verlaufes
eines Prozesswertes über
einen vorgegebenen Zeitbereich, zur Verfügung zu stellen, werden die
Daten der komprimierten Datei nach einer Anforderung vom Anlageninformationssystem
mittels des vom Historienserver
In
einem nachfolgenden Schritt
In
einem letzten Schritt
Beim
Lesen der vom Decodiermodul
Die
Ergebnisse der Kommpression der in
Die in der Tabelle 3 verwendeten Abkürzungen sind nachfolgender Aufzählung zu entnehmen:
- Raw-Tripel:
- Anzahl der Zeit/Wert/Status-Tripel, die in 2-Tagesdateien enthalten sind und die Datenbasis der Signalverläufe DS, LF darstellen
- dt.Dict:
- alle enthaltenen Zeitdifferenzen
- v.Dict:
- alle enthaltenen Werte
- dv.Dict:
- alle enthaltenen Wertdifferenzen
- dt.bits:
- zur Zeit-Kodierung benötigte Bits für einen Index
- v.bits:
- zur Wert-Kodierung benötigte Bits für einen Index
- dv.bits:
- zur Differenzwert-Kodierung benötigte Bits für einen Index
- %dt-v:
- erreichte Kompressionsrate in %, incl. Time/Value-Dictionary
- %dt-dv:
- erreichte Kompressionsrate in %, wenn Differenzwerte kodiert werden
- %WinZip:
- als Vergleich eine mit WinZip erzielte Kompressionsrate in %
- Raw triples:
- Number of time / value / status triples, which are contained in 2-day files and represent the database of the DS, LF waveforms
- dt.Dict:
- all included time differences
- v.Dict:
- all contained values
- dv.Dict:
- all contained value differences
- dt.bits:
- bits required for time coding for an index
- v.bits:
- for value encoding required bits for an index
- dv.bits:
- bits needed for differential value coding for an index
- % Dt v:
- achieved compression rate in%, incl. Time / Value-Dictionary
- % Dt-dv:
- achieved compression ratio in% when encoding difference values
- % WinZip:
- as comparison a compression rate achieved with WinZip in%
Claims (13)
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102007040675A DE102007040675A1 (en) | 2006-11-13 | 2007-08-09 | System and method for the lossless processing of process values of a technical plant or a technical process |
PCT/EP2007/009559 WO2008058648A2 (en) | 2006-11-13 | 2007-11-05 | System and method for the loss-free processing of process values of a technical installation or a technical process |
EP07819581.5A EP2095196B1 (en) | 2006-11-13 | 2007-11-05 | System and method for the loss-free processing of process values of a technical installation or a technical process |
CN2007800461025A CN101657768B (en) | 2006-11-13 | 2007-11-05 | System and method for the loss-free processing of process values of a technical installation or a technical process |
US12/465,388 US9134728B2 (en) | 2006-11-13 | 2009-05-13 | System and method for the loss-free processing of process values of a technical installation or a technical process |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102006053699.1 | 2006-11-13 | ||
DE102006053699 | 2006-11-13 | ||
DE102007040675A DE102007040675A1 (en) | 2006-11-13 | 2007-08-09 | System and method for the lossless processing of process values of a technical plant or a technical process |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102007040675A1 true DE102007040675A1 (en) | 2008-05-15 |
Family
ID=39272774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102007040675A Withdrawn DE102007040675A1 (en) | 2006-11-13 | 2007-08-09 | System and method for the lossless processing of process values of a technical plant or a technical process |
Country Status (4)
Country | Link |
---|---|
US (1) | US9134728B2 (en) |
EP (1) | EP2095196B1 (en) |
DE (1) | DE102007040675A1 (en) |
WO (1) | WO2008058648A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3285126A1 (en) * | 2016-08-15 | 2018-02-21 | Siemens Aktiengesellschaft | Process measuring device |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102611454B (en) * | 2012-01-29 | 2014-12-24 | 上海锅炉厂有限公司 | Dynamic lossless compressing method for real-time historical data |
US20160004734A1 (en) * | 2014-12-15 | 2016-01-07 | Invensys Systems, Inc. | Secure data isolation in a multi-tenant historization system |
US20150319227A1 (en) | 2014-05-05 | 2015-11-05 | Invensys Systems, Inc. | Distributed historization system |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5479587A (en) * | 1992-09-03 | 1995-12-26 | Hewlett-Packard Company | Page printer having adaptive data compression for memory minimization |
US5897621A (en) * | 1996-06-14 | 1999-04-27 | Cybercash, Inc. | System and method for multi-currency transactions |
EP1346305A4 (en) * | 2000-11-22 | 2005-04-06 | Lawrence Ausubel | System and method for a dynamic auction with package bidding |
US7319971B2 (en) * | 2001-01-31 | 2008-01-15 | Corprofit Systems Pty Ltd | System for managing risk |
US20030130933A1 (en) * | 2001-12-31 | 2003-07-10 | Xiao-Ming Huang | Method and apparatus for determining a customer's likelihood of paying off a financial account |
US7720818B1 (en) * | 2002-12-30 | 2010-05-18 | Sprint Communications Company L.P. | On-line account management system having a tiered account information storage system |
US7716168B2 (en) * | 2005-06-29 | 2010-05-11 | Microsoft Corporation | Modifying table definitions within a database application |
US6980873B2 (en) * | 2004-04-23 | 2005-12-27 | Taiwan Semiconductor Manufacturing Company, Ltd. | System and method for real-time fault detection, classification, and correction in a semiconductor manufacturing environment |
US20060106508A1 (en) * | 2004-11-12 | 2006-05-18 | Spx Corporation | Remote display of diagnostic data apparatus and method |
US8725637B2 (en) * | 2007-09-28 | 2014-05-13 | The Western Union Company | Methods and systems for generating invoices |
US20110238553A1 (en) * | 2010-03-26 | 2011-09-29 | Ashwin Raj | Electronic account-to-account funds transfer |
-
2007
- 2007-08-09 DE DE102007040675A patent/DE102007040675A1/en not_active Withdrawn
- 2007-11-05 WO PCT/EP2007/009559 patent/WO2008058648A2/en active Application Filing
- 2007-11-05 EP EP07819581.5A patent/EP2095196B1/en active Active
-
2009
- 2009-05-13 US US12/465,388 patent/US9134728B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3285126A1 (en) * | 2016-08-15 | 2018-02-21 | Siemens Aktiengesellschaft | Process measuring device |
Also Published As
Publication number | Publication date |
---|---|
WO2008058648A2 (en) | 2008-05-22 |
US20090287727A1 (en) | 2009-11-19 |
US9134728B2 (en) | 2015-09-15 |
EP2095196A2 (en) | 2009-09-02 |
WO2008058648A3 (en) | 2008-06-26 |
EP2095196B1 (en) | 2017-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE68907812T2 (en) | Method and device for encoding, decoding and transmitting data in compressed form. | |
DE112010004531B4 (en) | Data value occurrence information for data compression | |
EP2068448B1 (en) | Method and arrangement for arithmetic encoding and decoding with application of several tables | |
EP0612156A2 (en) | Digital coding method | |
DE2264090B2 (en) | Data compression | |
EP2095196B1 (en) | System and method for the loss-free processing of process values of a technical installation or a technical process | |
DE2208664A1 (en) | Method for decoding a prefix-free compression code of variable length | |
DE19821727A1 (en) | Apparatus for variable length coding | |
EP3624456A1 (en) | Method for compression and decompression of image data | |
EP2927818B1 (en) | Method for automatically processing a number of protocol files of an automation system | |
DE112011104620T5 (en) | Apparatus and method for processing a data item sequence | |
EP0867074B1 (en) | Method of compressing an analogue signal | |
DE102022117146A1 (en) | USE-BASED COMPRESSION FOR DATA STREAM FROM A TEST AND MEASUREMENT INSTRUMENT | |
EP1560338A1 (en) | Method for storing of process signals from a technical installation | |
DE102007040676A1 (en) | Optimized storage and access procedure in a history memory of an automation system | |
DE10258472B3 (en) | Processing method for digital data values e.g. for industrial process control and regulation, employing prediction method in combination with RICE method | |
EP1388230B1 (en) | Method and device for encrypting a discrete signal and method and device for decrypting the same | |
EP3583520B1 (en) | Method of operating a data storage system, computer program for implementing the method and data storage system operating according to the method | |
DE4432436C2 (en) | Data compression method and device for compressing data | |
CN101657768B (en) | System and method for the loss-free processing of process values of a technical installation or a technical process | |
DE19907729C2 (en) | Method and device for generating a data stream from code words of variable length and method and device for reading a data stream from code words of variable length | |
DE102006047465A1 (en) | Method and apparatus for compressing and decompressing digital data electronically using context grammar | |
WO2007031380A2 (en) | Method for carrying out an inverse burrows-wheeler transform with efficient memory use | |
DE3490580T (en) | Data compression system and method for processing digital sample signals | |
WO2014114506A1 (en) | Method for compressing source data using symmetries and device for performing the method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OR8 | Request for search as to paragraph 43 lit. 1 sentence 1 patent law | ||
R005 | Application deemed withdrawn due to failure to request examination | ||
R005 | Application deemed withdrawn due to failure to request examination |
Effective date: 20140830 |