Navigation:  Menu Commands > File Menu > Open command >

Pacific Data Recorder Old Format

Print this Topic Previous pageReturn to chapter overviewNext page

This file format is frequently used in field tests with Pacific Data recorders.

These files consist of a header block followed by data representing measured voltage. The header structure used in these files is defined below:

typedef struct tagHEADER {

char    tag_name[8];

char    units[4];

char    channel_description[20];

char    channel_location[20];

char    not_used_12[12];

char    file_test_name[40];

char    file_creation_date_and_time[24];

short   trigger_timeout_value;

short   number_of_pretrigger_segments;

short   number_of_posttrigger_segments;

short   sample_rate_profile[16];

short   configuration_word;

short   number_of_raw_data_files_in;

short   auto_calibration_procedure;

short   auto_calibration_order;

short   internal_trigger;

char    not_used_80[80];

float   convert[4];

float   trigger_level;

float   correlation_data[48];

float   calibration_conversion[10];

float   reserved;

} HEADER;

Files produced using this format are always either 263,936 bytes or 526,080 bytes (Modar model 5700 only) in size. The header information starts at offset 1024 from the start of the file. Information preceding the header is not used by DPlot. Raw data is organized in 16 segments of either 16384 bytes or 32768 bytes (Modar model 5700 only) beginning at offset 1792 in the file. Each segment may have a different time step, which is determined (in microseconds) by:

float time_mlpy[16] { 32768., 16384., 8192., 4096.,

                       2048.,  1024.,  512.,  256.,

                        128.,    64.,   32.,   16.,

                          8.,     4.,    2.,    1.  };

float Modar_time[16] {100000., 50000., 20000., 10000.,

                        5000.,  2000.,  1000.,   500.,

                         200.,   100.,    50.,    20.,

                          10.,     5.      2.,     1. };

for(i=0;i<=15;i++) {

   if( i < Header.number_of_pretrigger_segments )

      k = 0;

   else

      k = i - Header.number_of_pretrigger_segments + 1;

   if( ModarFile )

      TimeStep[i] = time_mlpy[Header.sample_rate_profile[k]];

   else

      TimeStep[i] = Modar_time[Header.sample_rate_profile[k]];

}

Raw data is translated to engineering units by the cubic polynomial:

volts = float( RawData ) / 3276.8;

Y = ( ( Header.Convert[3]*volts +

        Header.Convert[2] )*volts +

        Header.Convert[1]  )*volts +

        Header.Convert[0];

 

 


Page url: https://www.dplot.com/help/index.htm?wesoldformat.htm