mirror of
https://git.intern.spaceteamaachen.de/ALPAKA/sw-plotting-tool.git
synced 2025-07-31 11:01:54 +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