9. MDF-DAT Sync Plugin (HVAC)

This guide focuses on the MDF-DAT Sync Plugin (HVAC) plugin within the d3VIEW Desktop application, and includes the CLI interface information as well.

The MDF-DAT sync plugin syncs together multiple (or singular) MDF and DAT files together with respect to the time channel. The time channel for DAT files is typically “Test Run Time”, and MDF files’ responses have their own times, albeit they are typically closely correlated with each other and the main time channel (“mdf_time”). The two different kinds of files are synced together via the time channels. When there are multiple MDF files, each MDF file’s time values must be offset by some value in order to sync the MDF files with the DAT file(s) [usually there is just one DAT file]. The value of this offset differs for each different MDF file and is calculated using a formula that optimizes the differences between the composite MDF curve and the DAT curve. There is a multitude of different user options available.

_images/hvac_desktop.png

9.1. Command Line Arguments

Command Line Args
Name Mapping (dest) Default Action Metavar Help Group
-dat_file dat_file ‘empty string’ NA dat_file dat file name NA
-dat_files dat_files ‘empty string’ NA dat_files Comma separated list of dat files. ex: “file1,file2” NA
-dat_channel dat_channel ‘empty string’ NA dat_channel dat channel NA
-mdf_files mdf_files ‘empty string’ NA mdf_files Comma separated list of mdf files. ex: “file1,file2” NA
-mdf_channel mdf_channel ‘empty string’ NA mdf_channel mdf channel NA
-time_channel time_channel ‘empty string’ NA time_channel dat time channel used for syncing NA
-channel_filter channel_filter ‘empty string’ NA channel_filter dat/mdf channel filter NA
-dat_time_channel dat_time_channel ‘empty string’ NA dat_time_channel dat channel filter NA
-mdf_time_channel mdf_time_channel ‘empty string’ NA mdf_time_channel mdf channel filter NA
-directory directory ‘empty string’ NA directory directory to detect dat and mdf files NA
-output_file output_file ‘mdf_dat_sync_output.dat’ NA output_file output file name NA
-summary summary ‘False’ NA summary Summary flag NA
-stitch_mdf stitch_mdf ‘True’ NA stitch_mdf Flag to stitch channels from multiple mdf files together NA
-auto_sync auto_sync ‘False’ NA auto_sync Includes synced channels in the responses output NA
-sync_time_channels sync_time_channels ‘False’ NA sync_time_channels Flag to indicate syncing using time channels NA
-indent indent ‘None’ NA indent Indent for the json output NA
-keep_internal_files keep_internal_files ‘False’ NA keep_internal_files Option to keep internal files the program produces NA
-sample_interval sample_interval ‘0’ NA NA Reduce the points to only ones at the specified interval NA
-rsp_per_file responses_per_file ‘empty string’ NA NA Number of responses per file, helpful for partitioning a large response json into smaller files NA

9.2. Desktop Application

Users will likely prefer to use the plugin in the desktop app. HVAC tests can be published test-by-test (“Single” tab) or multiple tests at a time (“Multiple” tab). Multiple-test publishing is useful if the tests have share the DAT/MDF channel.

For the Single test (“Single” tab) publishing, the only required fields are the data folder selection and DAT channel and MDF channel dropdown selection, the latter two both being automatically selected - Ticks for DAT channel and SecondsFromMidnight for MDF channel - assuming they are present in the data, which they should be. If they are absent for whatever reason, the dropdown will be blank.

For the Multiple test publishing, DAT channel and MDF channel are in text boxes as reading through all the data and checking whether the usual fields exist would be unwieldy in terms of time.

9.3. Options Descriptions

Options Descriptions
Option Description
Tags Tags to associate the test with
Project Project to organize the published test into
Template Template to apply towards the test
Keep DAT Columns / Keep MDF Columns List of responses that shall only be present in the published test. Wildcards may be used, and are not case-sensitive. For instance, eng*, dia* will capture EngineSpeed, EngineSts, EngineWaterTemp, DIA_DIA_run, DIA_Evap_Temp_Base_Freeze, etc.
Sample Interval Useful for large tests, should be an integer whose value will determine the nth lines to keep. For instance, a value of 10 indicates that only every 10th data value will be kept in the published test.
Track GUI options Useful to check the configurations that the test was published with. If something is unexpected, then checking the publication parameters may clear up some confusion.
Override time zero If engineers would like to manually set the time 0, this is the place to do it. If the value entered does not match any time value exactly, the closest time value is selected. For instance, a value of 500.0 is entered, but the closest time value is 500.015. The 500.015 time value would be set to time 0.0 and the other time values would be adjusted accordingly. So if the neighborhooding time values around the new time 0.0 are 498.001, 499.003, 500.015, 501.008, 502.007, then the adjusted time values would be the following: -2.014, -1.012, 0.0, 0.993, 1.992.
# of Responses per File Useful for large tests. If the resulting responses.json (the file that contains the test data to be published) is expected to be too large due to the large input data sizes, then this option may be used to expediate the publishing process.
Remove DAT/MDF channels’ outliers If selected, outlier data in the DAT and MDF files will removed as follows: the difference between consecutive datapoints will be normalized and those datapoint pairs whose differences have a normalized value whose absolute value is greater than 10 will be removed.
Launch Visualizer & Raw Data Viewer / MDF-dat sync in visualizer Shows the visualizer plugin for all the MDF and DAT files in the test folder. Users can visualize individual MDF and DAT files, or the synced test. Viewing the synced test will take some time as the sync algorithm must complete. If a test is published already and the unified dat file is still present in the test folder, then the unified dat file can be viewed which is equivalent to viewing the synced test.