mirror of
https://git.intern.spaceteamaachen.de/ALPAKA/sw-plotting-tool.git
synced 2025-06-10 01:55:59 +00:00
Uploaded reformat tool, to handle HyEnds coriolis measurement
This commit is contained in:
parent
39340a0f58
commit
e3f72fbdd7
77
hyEndSucks.m
Normal file
77
hyEndSucks.m
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
close all
|
||||||
|
clc
|
||||||
|
format longg
|
||||||
|
|
||||||
|
inputPath = ".\Bsp1Coriolis.txt";
|
||||||
|
outputPath = ".\CoriolisGoodFormat.csv";
|
||||||
|
|
||||||
|
Table=readtable(inputPath, 'VariableNamingRule','preserve');
|
||||||
|
|
||||||
|
time = Table(:,2);
|
||||||
|
secs = Table(:,3);
|
||||||
|
|
||||||
|
%channel identification
|
||||||
|
channels = Table.Properties.VariableNames;
|
||||||
|
channels = string(channels)';
|
||||||
|
channels(1:3) = [];
|
||||||
|
|
||||||
|
data = Table(:,4);
|
||||||
|
|
||||||
|
%time conversion
|
||||||
|
time = table2array(time);
|
||||||
|
secs = table2array(secs);
|
||||||
|
|
||||||
|
connectArrays = strcat(time, secs);
|
||||||
|
timeArray = datetime(connectArrays, 'InputFormat', 'HH:mmss,SSS');
|
||||||
|
timeArray.Format = 'mm:ss.SSS';
|
||||||
|
|
||||||
|
times = double(convertTo(timeArray,'epochtime', 'Epoch', timeArray(1), 'TicksPerSecond', 1000)) ./ 1000.0;
|
||||||
|
|
||||||
|
%convert column to array
|
||||||
|
arrayData = times;
|
||||||
|
|
||||||
|
for channel = 1: length(channels)
|
||||||
|
data = table2array(Table(:, 3 + channel));
|
||||||
|
data = strrep(data, ',', '.');
|
||||||
|
data = str2double(data);
|
||||||
|
|
||||||
|
if ~isnan(data)
|
||||||
|
arrayData = cat(2, arrayData, data);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
% read header because read table can't handle spaces in channel name
|
||||||
|
fid = fopen(inputPath);
|
||||||
|
% Read all lines & collect in cell array
|
||||||
|
txt = textscan(fid,'%s','delimiter','\n');
|
||||||
|
% Read header Line
|
||||||
|
Val = txt{1}(1);
|
||||||
|
headers = Val{1};
|
||||||
|
headers = split(headers);
|
||||||
|
|
||||||
|
%fix units
|
||||||
|
headerNames = [];
|
||||||
|
count = 1;
|
||||||
|
|
||||||
|
for header = 3: length(headers)
|
||||||
|
|
||||||
|
if headers{header}(1) ~= '(' && strcmp(headers{header}, 'Mass')
|
||||||
|
% Special rule for "Total Mass", since the space is horrible
|
||||||
|
headerNames{count-1} = strcat(headerNames{count-1}, headers{header});
|
||||||
|
elseif headers{header}(1) ~= '('
|
||||||
|
headerNames{count} = headers{header};
|
||||||
|
count = count + 1;
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
headerNames = cell2mat(join(headerNames, ";"));
|
||||||
|
|
||||||
|
fid = fopen(outputPath, "wt");
|
||||||
|
fprintf(fid, '\n');
|
||||||
|
fprintf(fid, '\n');
|
||||||
|
fprintf(fid, headerNames);
|
||||||
|
fprintf(fid, '\n');
|
||||||
|
|
||||||
|
writematrix(arrayData, outputPath, 'WriteMode', 'append', 'Delimiter', ';');
|
||||||
|
|
||||||
|
fclose('all');
|
Loading…
x
Reference in New Issue
Block a user