polytec#

Purpose

Reading of POLYTEC .svd files.

Syntax

 wire         = polytec('ReadMesh',fname);
 list         = polytec('ReadList',fname)
 XF           = polytec('ReadSignal',fname,RO)
 [cmap,fname] = polytec('ReadImg',fname);
 info         = polytec('ReadInfo',fname);
 polytec('ToMat',fname,RO);

Description

The polytecfunction reads files generated by Polytec measurement systems. Actual files successfully read are :

  • *.set : Setting file from which the wireframe can be loaded if defined (useful for pretest analysis before measurement)
  • *.pvd : File containing a unique channel from which measurements can be extracted
  • *.svd : File containing several channels from which the wireframe geometry and the data can be extracted depending what measurements have been performed (Time/Frequency domain, Transfers...)

Prior to use this function, the Polytec File Access provided by Polytec must be installed : Download the Polytec Update software (freely available in their website) and install it with all the dependencies.

This function has been tested only with a few versions of Polytec File Access (4.7, 5.0 and 5.6) , but we experienced no problem at each update so that it is likely to work with all versions in between.

It is possible for some application to merge several measurements files with the Polytec applications. This is handled by this function : simply provide the file defining the merge (and eventually the individual files if links are made and not data copy).

ReadMesh#

The ReadMesh command allows to extract the test wireframe in the SDT format. It contains the node locations and the sensor orientations (depending on the type of laser used : monopoint, with mirror, 3D laser)

fname=sdtcheck('PatchFile',struct('fname','PolytecMeas.svd','in','PolytecMeas.svd','back',1));
wire=polytec('ReadMesh',fname); % Set the wireframe in the variable wire
polytec('ReadMesh',fname); % Without output, directly open the model in feplot

ReadList#

Three parameters are needed to access the data :

  • pointdomain : Time, FFT, 1/3 octave...
  • channel : Vib, Ref1, Vib & Ref1 (transfers), ...
  • signal : Displacement, Velocity, Acceleration, H1 Displacement / Force...

The ReadList command allows to see all the combinations of these parameters that are allowed for a given file. With an output, the call sends back a cell array contains all the combinations. Without, it opens a tree in a tab in the SDTRoot window, from which it is possible to do a right click on the wanted data and select Read Selected : data are read and display in an iiplot window.

 fname=sdtcheck('patchget',struct('fname','PolytecMeas.svd'));
 % Provide a cell array with all readable measured data
 list=polytec('ReadList',fname);
 display(list);
 polytec('ReadList',fname); % Open a tree in SDTRoot to interactively select data

ReadSignal#

The ReadSignal command allows to read the measurement data specified by the three parameters (point domain, channel and signal) given in a structure as a third argument.

It is also possible to provide the wanted parameters by extracting the corresponding line of the cell array provided by the command ReadList (as a parameter list).

fname=sdtcheck('PatchFile',struct('fname','PolytecMeas.svd','in','PolytecMeas.svd','back',1));
RO=struct('pointdomain','FFT', ...
 'channel','Vib & Ref1',... % use {{'Vib X','Vib Y'}} to concatenate multiple channels  
'signal','H1 Displacement / Voltage');
XF=polytec('ReadSignal',fname,RO);
% alternative call using one row of the cell array "list"
list=polytec('ReadList',fname);
XF=polytec('ReadSignal',fname,struct('list',{list(20,:)}));

ReadFastScan#

The ReadFastScan command reads polytec measurements in FastScan mode. It allows a custom handling of auto-spectra and cross-spectra to consider references all together and combine sequential measurements.

ReadImg#

The ReadImg command allows to read the image used to construct the test geometry. The image is displayed in a figure, the RGB color map is provided as first output and it creates a .png file whose name is given as second output.

fname=sdtcheck('PatchFile',struct('fname','PolytecMeas.svd','in','PolytecMeas.svd','back',1));
[cmap,fname] = polytec('ReadImg',fname);

ReadInfo#

The ReadInfo command provides a structure summarizing the file content : measurement type (Time, FFT,...), acquisition settings, number of measured points, generator settings,...

ToMat#

The ToMat command allows to extract wanted data and save them as a .mat file in the SDT format. This is useful especially if the scripts that read the Polytec files must be run on a Linux OS or on computers where Polytec File Access is not installed.

Once the ToMat file has been executed, the .mat file is used instead of the Polytec one to load data (the ReadMesh and ReadSignal commands remain the same).

 fname=sdtcheck('PatchFile',struct('fname','PolytecMeas.svd','in','PolytecMeas.svd','back',1));
 RO=struct('pointdomain','FFT', ...
 'channel','Vib & Ref1',...% use {{'Vib X','Vib Y'}} to concatenate multiple channels  
 'signal','H1 Displacement / Voltage');
 % Create a .mat file next to the Polytec one with the mesh, the data and the image.
 polytec('ToMat',fname,RO); 
 r1=load(strrep(fname,'.svd','.mat'));
 r1.TEST
 r1.XF
 r1.img