Sync from remote server: 2025-10-12 18:56:41
This commit is contained in:
80
ATD/conv_grezziTLH.m
Executable file
80
ATD/conv_grezziTLH.m
Executable file
@@ -0,0 +1,80 @@
|
||||
% Funzione che converte i dati grezzi in dati di accelerazione usando i
|
||||
% valori delle calibrazioni per i Tilt Link H
|
||||
% accTLH raccoglie le accelerazioni
|
||||
% magTLH raccoglie i dati di campo magnetico
|
||||
% ris_acc_H raccoglie le risultanti delle accelerazioni
|
||||
% ris_mag_H raccoglie le risultanti dei campi magnetici
|
||||
% T_TLH raccoglie i dati di temperatura
|
||||
|
||||
function [accTLH,ris_acc_TLH,tempTLH,ErrTiltLinkH] = conv_grezziTLH(rTLH,...
|
||||
accTLH,tempTLH,DCalTLHTot,ErrTiltLinkH,MEMS,FileName)
|
||||
|
||||
fileID = fopen(FileName,'a');
|
||||
fmt = '%s \r';
|
||||
text = 'conv_grezziTLH function started';
|
||||
fprintf(fileID,fmt,text);
|
||||
|
||||
if MEMS == 2
|
||||
% Spacchetto
|
||||
caX_TLH = DCalTLHTot(:,1);
|
||||
caY_TLH = DCalTLHTot(:,4);
|
||||
caZ_TLH = DCalTLHTot(:,7);
|
||||
pIntX_TLH = DCalTLHTot(:,2);
|
||||
pIntY_TLH = DCalTLHTot(:,5);
|
||||
pIntZ_TLH = DCalTLHTot(:,8);
|
||||
iIntX_TLH = DCalTLHTot(:,3);
|
||||
iIntY_TLH = DCalTLHTot(:,6);
|
||||
iIntZ_TLH = DCalTLHTot(:,9);
|
||||
caT_TLH = DCalTLHTot(:,10);
|
||||
intT_TLH = DCalTLHTot(:,11);
|
||||
|
||||
%% Accelerometri
|
||||
cont = 1;
|
||||
cn = 1;
|
||||
% Contatore dei nodi, corregge le accelerazioni con le calibrazioni
|
||||
for ii=1:3*rTLH
|
||||
if cont==1
|
||||
accTLH(:,ii) = accTLH(:,ii)*caX_TLH(cn)+(tempTLH(:,cn)*pIntX_TLH(cn)+iIntX_TLH(cn));
|
||||
cont = cont+1;
|
||||
elseif cont==2
|
||||
accTLH(:,ii) = accTLH(:,ii)*caY_TLH(cn)+(tempTLH(:,cn)*pIntY_TLH(cn)+iIntY_TLH(cn));
|
||||
cont = cont+1;
|
||||
else
|
||||
accTLH(:,ii) = accTLH(:,ii)*caZ_TLH(cn)+(tempTLH(:,cn)*pIntZ_TLH(cn)+iIntZ_TLH(cn));
|
||||
cont = 1;
|
||||
cn = cn+1;
|
||||
end
|
||||
end
|
||||
|
||||
%% Conversione delle temperature
|
||||
for t = 1:rTLH
|
||||
tempTLH(:,t) = tempTLH(:,t)*caT_TLH(t,1) + intT_TLH(t,1);
|
||||
end
|
||||
|
||||
%% Calcolo della risultante
|
||||
[rAcc,cAcc] = size(accTLH);
|
||||
ris_acc_TLH = zeros(rAcc,cAcc/3); % matrice risultante accelerazioni
|
||||
clear i
|
||||
clear ii
|
||||
clear cont
|
||||
clear cn
|
||||
cont = 1; % contatore
|
||||
cn = 0;
|
||||
%% Calcolo della risultante
|
||||
for ii = 1:(cAcc/3) % colonne
|
||||
for i = 1:rAcc % righe
|
||||
ris_acc_TLH(i,cont) = (accTLH(i,cn*3+1)^2+accTLH(i,cn*3+2)^2+accTLH(i,cn*3+3)^2)^0.5;
|
||||
end
|
||||
cn = cn+1;
|
||||
cont = cont+1;
|
||||
end
|
||||
|
||||
else
|
||||
ris_acc_TLH = [];
|
||||
end
|
||||
|
||||
text15 = 'Raw Data of Tilt Link H converted into physycal units correctly. conv_grezziTLH function closed';
|
||||
fprintf(fileID,fmt,text15);
|
||||
fclose(fileID);
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user