Measurement Logger

The expiration of the posting module itself can only be started and terminated. It inherits the information stored in the mrsConfig.xml file. This file is monitored and, if the change is detected, the new data is transferred to the process. The changes to the configuration file are made through the editor.

General information about the editor

In principle, the editor is structured from the following basic elements:

  1. Menu bar: Channels can be created, archived or the configuration saved via the menu bar.
  2. Tableiste: Here you can choose between channel and archive view.
  3. Item List: Displays all items in the active view.
  4. Property List: Displays all properties of one (or more) selected objects, sorted by category.

Channels

New channels can be added either from the Channel menu. or by right-clicking on an empty line in the item list. The following dialog appears for variable selection:

This dialog shows all signable variables, grouped by variable groups. By clicking on the + or – Symbol next to the respective group, all associated variables are displayed or Hidden. By setting the check mark next to the respective variables, it is possible to determine for which variables channels should be created. When you place the check mark next to a group, all related variables are selected. Any selection can be cancelled by resetting the respective check mark. By clicking on the OK button, a channel is created for each selected variable. Clicking Cancel will discard the selection and nothing else will happen.

The deletion of a channel takes place by selecting a variable in the item list and then by right-clicking on this variable or via the menu item Channel – Remove. By selecting additional channels with a Ctrl key held, it can also delete several channels at once.

To edit a channel, it must be clicked. All its properties and their current values will then appear in the property list. A selected channel has the following categories and properties:

  • Recording

This category contains all the settings related to the recording.

  • Sampling interval

In the synchronous scanning mode, the sampling interval determines at which intervals the variable value should be picked up and posted. In asynchronous scanning mode, it specifies the maximum time interval between two incoming values. If no new value occurs within this distance, the last posted value is posted again, with a renewed timestamp. So it’s a kind of timeout. The input format is d.hh:mm:ss.f, which is days, hours, minutes, seconds, and fractions of a second (one to seven digits). Specifying days and fractions of a second is optional.

  • Scanning mode

There are two sampling modes: Synchronous and Asynchronous. Default is Asynchronous. Synchronized, the current value is posted in the sampling interval.  Asynchronous posting any change in value. However, if no value change occurs for the duration of a sampling interval, the last posted value is posted again with a new timestamp. The sampling interval must be selected to be greater than the refresh interval of the VisXpert variables. When you create a channel, the sampling interval is set to 110% of the refresh interval.

  • Archive

Here you can select the archive to which the values are to be posted. With a newly created measurement system, there is only the default archive, which is a ring buffer (more on this later).

  • Record

Indicates whether the channel should be recorded or not.

  • GP Variable

Shows which VisXpert variable the channel contains. This value cannot be changed.

  • Hysteresis

Indicates, if optimization is enabled, which tolerance should be applied during optimization. Depending on whether hysteresis mode is set to Absolute or Permille of Min/Max, this value is interpreted as an absolute value or per mille set. If Disabled is selected as Hysteresis Mode, the value is ignored.

  • Hysteresis mode

There are three hysteresis modes: Disabled, Absolute, and Permille of Min/Max.
Disabled means that no tolerance is applied during optimization (this does not mean that no optimization can take place!). The measured value curve therefore still corresponds to the original after optimization. Absolutely means that a measured value is only optimized away if the y-coordinate of the resulting measurement curve at the point of the measured value to be optimized is limited to the amount specified in hysteresis from the original. In the case of min/max per mille, instead of the absolute amount, the permille rate of the difference of the lowest and highest reading is taken as a tolerance. Min/Max are recaptured each time recording starts. This approach is more flexible because there is no need to configure the absolute amount attached for each channel. That’s why this is the default value.

  • Optimize

Specifies whether to optimize the values to be posted to take up less disk space. The optimization is lossy and will be explained in more detail later. When optimization is disabled, the Hysteresis and Hysteresis Mode properties are meaningless and each value is posted. Optimization is currently only possible in combination with the SQL Archive.

  • Preprocessing expression

Allows to manipulate incoming readings before posting. The incoming value is referenced as ‘x’. The decimal separator is the period ‘.’. For example, to convert a reading in Kelvin to degrees Celsius, you can use the following expression: (x-32)*5/9

  • Look

This category contains all the settings that affect the display.

  • Unit

Indicates the unit of the channel. Used to label the Y axis.

  • Maximum displayed value

Sets the upper bound of the y-axis to a fixed value. If no value is specified, the axis scales to the highest value to display.

  • Minimum displayed value

Sets the lower limit of the y-axis to a fixed value. If no value is specified, the axis scales to the lowest value to display.

  • Name

Determines the public name of the channel. This is then visible in the legend, among other things.

  • Serial color

Determines the color of the series that represents the channel in the measured value display. If no value is specified, a random color is assigned to the show each time the display is started. To edit property values of multiple channels at once, additional channels can be selected with the Ctrl key held.

Archives

There are three types of archives: ring buffer, follow-up archive, and SQL archive.

The ring buffer records data within a single file until it reaches maximum size. At that time, the data is written back to the beginning of the file, overwriting the oldest data. The ring buffer is interesting if long-term archiving of the data is not required.

In the follow-up archive, however, data in a file is updated until a trigger initiates a split. At this point, the file will be renamed and a new one with the old name will open. Renaming inserts the start and end dates of the sub-archive before the file extension. The times are to be understood as UTC.
The SQL archive allows you to post the data to the database. It can be configured to periodically move old data from the database to an archive file.

New archives can be created either from the Archive menu. or by right-clicking on an empty row in the item list. The following dialogue appears for basic parameterization:

The name must be unique for each archive. The maximum size must be an integer and more than 3 megabytes. It can only be specified here and cannot be changed later. It is only important for the ring buffer.

A selected archive has the following properties:

  • Description: Optional description for the archive.
  • Maximum size: Displays the maximum size of the archive in bytes. It currently has meaning only for the ring buffer.
  • Name: Determines the name of the archive.
  • Path
    Displays the archive URL.
  • Write interval: Specifies the interval at which the posted data should be written to disk. A smaller interval is safer in the event of a crash, but a larger one is more performant because the hard drive needs to be accessed less frequently. It should also be noted that if the interval is relatively high, the data accumulates in memory. Therefore, too high an interval is not recommended even from a performanc
    e point of view. The input format is d.hh:mm:ss.f, which is days, hours, minutes, seconds, and fractions of a second (one to seven digits). Specifying days and fractions of a second is optional.
  • Storage Mode: Displays the type of archive.

Follow-up archives have the following additional properties:

  • Size: Indicates the size from which the archive file should be completed. The specification is in bytes.
  • Mode: Specifies which triggers to use. Size, variable and time or a combination of them are possible.
  • Variable: Here you can select a Boolean VisXpert variable that, once set to true, triggers the trigger. It is then automatically set back to false.
  • Time: Can be set to day, week or month. The trigger is triggered at 0:00, Monday 0:00, or the first of the month at 0:00. A change of day/week/month is also detected if the registration was not on at the time of the change.

SQL archives also have paging options that are used to limit the archive size by periodically offloading old values into a file that can be reimported if needed:

  • Offloading ActiveActivated/disables the swap function.
  • Interval Indicates at what interval to offsource.
    The input format is d.hh:mm:ss.f, which is days, hours, minutes, seconds, and fractions of a second (one to seven digits). Specifying days and fractions of a second is optional.
  • Threshold Indicates the minimum amount of data to be considered when swapping. The
    input format is d.hh:mm:ss.f, which is days, hours, minutes, seconds, and fractions of a second (one to seven digits). Specifying days and fractions of a second is optional.
  • Path: Allws you to set a path under which to place the paged data. Otherwise, the normal data directory is used. If the specified path is unreachable, paged data is also temporarily cached in the data directory.

In order to display outsourced data, the data to be imported must be selected under Archive –> Import outsourced data. The times displayed in the dialog are UTC. If the data is no longer needed, it can be deleted from the archive via archive –> Remove imported data again.

Optimized storage

Optimization is according to the following algorithm:

  1. Always book the first value.
  2. Wait for three values.
  3. Put a straight line through first and last point.
  4. From the penultimate to the second value, it is now checked whether a value differs from the straight line by more than the hysteresis on the y-axis.
    1. If so, the penultimate value must be posted, because that is always the value where all points are still within the tolerance. The penultimate point becomes a new first point and the last one becomes second. All other points can be forgotten. It will be at 2. Continue.
    2. However, if all points are within the tolerance of the line, simply wait for the next value and then at 3. Continue.

Print Friendly, PDF & Email