999 lines
38 KiB
Matlab
Executable File
999 lines
38 KiB
Matlab
Executable File
function RC = ATD_Dati(IDcentralina,DTcatena)
|
|
%%% Programma per l'elaborazione dei dati di Cir Array, Rad Array, Tilt
|
|
%%% Link H, Tilt Link HR H, PreConv Array, PreConv Array HR e strumenti
|
|
%%% analogici per gallerie.
|
|
%%% Versione 3.4
|
|
|
|
tic
|
|
|
|
RC = 1; %#ok<NASGU>
|
|
text = ['Elaboration of chain ' DTcatena ' of control unit ' IDcentralina ' started correctly'];
|
|
d = datestr(datetime,'yyyy_mm_dd');
|
|
t = datestr(datetime,'HH_MM_SS');
|
|
FileName = ['LogFile-' IDcentralina '-' DTcatena '-' d '-' t '.txt'];
|
|
outdat = fopen(FileName,'wt+'); %#ok<NASGU>
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
|
|
%% Parte generale
|
|
|
|
% Associo ID company al relativo DB
|
|
% Definisco i parametri del Database
|
|
IDcompany = '1'; % DA INTEGRARE IN VERSIONI FUTURE
|
|
DB = database_definition(IDcompany,FileName);
|
|
|
|
% Apro la connessione al DB
|
|
dbname = cell2mat(DB{1,1});
|
|
username = cell2mat(DB{2,1});
|
|
password = cell2mat(DB{3,1});
|
|
driver = cell2mat(DB{4,1});
|
|
dburl = cell2mat(DB{5,1});
|
|
conn = database(dbname, username, password, driver, dburl);
|
|
|
|
% scarico Contol Unit ID
|
|
unitID = IDunit(IDcentralina,conn,FileName);
|
|
|
|
% questa funzione considera la prima data e ora da cui caricare i dati a seconda della catena
|
|
[date,time,date_AC,time_AC,Nodo_AC,unitID] = datainiziale(DTcatena,unitID,conn,FileName);
|
|
|
|
% funzione che elenca tutti i nodi ed il loro numero presenti per ogni tipo di sensore.
|
|
[idTool,NodoTunnelLink,NodoRadialLink,NodoTiltLinkH,...
|
|
NodoTiltLinkHRH,NodoPreConvLink,NodoPreConvLinkHR,NodoPressureLink,...
|
|
NodoLoadLink,NodoExtensometerLink,Nodo3DExtensometerLink,NodoWireExtensometerLink,...
|
|
NodoMultiPointRodExtensometer,NodoTiltLinkHR3DH,NodoPreConvLinkHR3D,...
|
|
NodoAnalogLink,NodoCrackLink,Nodo3DCrackLink,Nodo2DCrackLink,NodoStressMeter,...
|
|
rTuL,rRL,rTLH,rTLHRH,rPCL,rPCLHR,rPrL,rLL,rEL,r3DEL,rWEL,rMPBEL,rAL,rCrL,r3DCrL,...
|
|
r2DCrL,rSM,~,~] = tipologiaNodi(DTcatena,unitID,conn,FileName);
|
|
|
|
% funzione che ricostruisce i nodi della catena
|
|
catena = schema(idTool,conn,FileName);
|
|
|
|
% funzione che attiva/disattiva l'elaborazione per una determinata tipologia di nodo
|
|
[yesTuL,yesRL,yesTLH,yesTLHRH,~,yesPCL,yesPCLHR,~,yesPL,yesLL,...
|
|
yesEL,yes3DEL,yesWEL,yesMPBEL,yesAL,yesCrL,yes3DCrL,yes2DCrL,yesSM] = ...
|
|
YesNo(NodoTunnelLink,NodoRadialLink,NodoTiltLinkH,NodoTiltLinkHRH,...
|
|
NodoTiltLinkHR3DH,NodoPreConvLink,NodoPreConvLinkHR,NodoPreConvLinkHR3D,...
|
|
NodoPressureLink,NodoLoadLink,NodoExtensometerLink,Nodo3DExtensometerLink,...
|
|
NodoWireExtensometerLink,NodoMultiPointRodExtensometer,NodoAnalogLink,...
|
|
NodoCrackLink,Nodo3DCrackLink,Nodo2DCrackLink,NodoStressMeter,FileName);
|
|
|
|
% Definisco i parametri di elaborazione di un'installazione
|
|
[NdatiMedia,Ndatidespike,MEMS,tolleranzaAcc,Tmax,Tmin,Ndevst,Wdevst,...
|
|
Ndevst_HR,Wdevst_HR,NumBasi,elab_option] = Parametri_Installazione(idTool,...
|
|
conn,yesTuL,yesRL,yesTLH,yesTLHRH,yesPCL,yesPCLHR,yesMPBEL,yesWEL,FileName);
|
|
|
|
% funzione che ricostruisce segmenti di pertinenza etc
|
|
[SpeTuL,SpeRL,SpeTLH,PsTLH,SpeTLHRH,PsTLHRH,SpePCL,SpePCLHR]...
|
|
= schemaSP(yesTuL,yesRL,yesTLH,yesTLHRH,yesPCL,yesPCLHR,...
|
|
NodoTunnelLink,NodoRadialLink,NodoTiltLinkH,NodoTiltLinkHRH,...
|
|
NodoPreConvLink,NodoPreConvLinkHR,rTuL,rRL,rTLH,rTLHRH,rPCL,rPCLHR,catena,FileName);
|
|
|
|
%% Scarico dei dati
|
|
|
|
% funzione che carica i dati di calibrazione
|
|
[DCalTuLTot,DCalRLTot,DCalTLHTot,DCalTLHRHTot,DCalPCLTot,DCalPCLHRTot,...
|
|
DCalPLTot,DCalLLTot,DCalELTot,DCalEL3DTot,DCalWELTot,DCalMPBELTot,...
|
|
DCalALTot,DCalCrLTot,DCal3DCrLTot,DCal2DCrLTot,DCalSMTot,yesTuL,yesRL,yesTLH,yesTLHRH,...
|
|
yesPCL,yesPCLHR,yesPL,yesLL,yesEL,yes3DEL,yesWEL,yesMPBEL,yesCrL,yes3DCrL,yes2DCrL,...
|
|
yesAL,yesSM] = letturaCal(IDcentralina,DTcatena,catena,rTuL,rRL,rTLH,rTLHRH,...
|
|
rPCL,rPCLHR,rPrL,rLL,rEL,r3DEL,rWEL,rMPBEL,NumBasi,rAL,rCrL,r3DCrL,r2DCrL,rSM,...
|
|
NodoTunnelLink,NodoRadialLink,NodoTiltLinkH,NodoPreConvLink,NodoPressureLink,...
|
|
NodoLoadLink,NodoExtensometerLink,Nodo3DExtensometerLink,...
|
|
NodoWireExtensometerLink,NodoMultiPointRodExtensometer,NodoAnalogLink,...
|
|
NodoCrackLink,Nodo3DCrackLink,Nodo2DCrackLink,NodoStressMeter,yesTuL,yesRL,yesTLH,yesTLHRH,...
|
|
yesPCL,yesPCLHR,yesPL,yesLL,yesEL,yes3DEL,yesWEL,yesMPBEL,yesAL,yesCrL,yes3DCrL,yes2DCrL,...
|
|
yesSM,conn,FileName);
|
|
|
|
% Reinizializzazione scarico dati
|
|
[NuovoZeroTuL,NuovoZeroRL,NuovoZeroTLH,NuovoZeroTLHRH,NuovoZeroPCL,...
|
|
NuovoZeroPCLHR,NuovoZeroAL,NuovoZeroPrL,NuovoZeroLL,NuovoZeroEL,NuovoZero3DEL,...
|
|
NuovoZeroWEL,NuovoZeroMPBEL,NuovoZeroCrL,NuovoZero2DCrL,NuovoZero3DCrL,NuovoZeroSM,...
|
|
DatiElabTunnelLink,DatiElabRadialLink,DatiElabTiltLinkH,DatiElabTiltLinkHRH,...
|
|
DatiElabPreConvLink,DatiElabPreConvLinkHR,...
|
|
datainiTuL,datainiRL,datainiTLH,datainiTLHRH,datainiPCL,datainiPCLHR,...
|
|
tempoiniTuL,tempoiniRL,tempoiniTLH,tempoiniTLHRH,tempoiniPCL,tempoiniPCLHR,...
|
|
datainiPL,datainiLL,datainiEL,dataini3DEL,datainiWEL,datainiCrL,dataini2DCrL,...
|
|
dataini3DCrL,datainiAL,datainiMPBEL,datainiPrL,datainiSM,tempoiniPL,tempoiniLL,...
|
|
tempoiniEL,tempoini3DEL,tempoiniWEL,tempoiniCrL,tempoini2DCrL,tempoini3DCrL,tempoiniAL,...
|
|
tempoiniMPBEL,tempoiniPrL,tempoiniSM,DatiElabAnalogLink,Date_Rif_EL,Date_Rif_3DEL,...
|
|
Date_Rif_SM,ay_TuL,ay_TuL_AC,t_TuL_AC,t_TuL,data1_AC] = scarico(date,time);
|
|
|
|
if strcmp(IDcentralina,'ID0142') == 1 && strcmp(DTcatena,'DT0173')
|
|
[DatiTunnelLink,ErrTunnelLink,DatiRadialLink,ErrRadialLink,DatiTiltLinkH,ErrTiltLinkH,datainiTLH,...
|
|
DatiTiltLinkHRH,ErrTiltLinkHRH,DatiPreConvLink,ErrPreConvLink,DatiPreConvLinkHR,ErrPreConvLinkHR,...
|
|
DatiPressureLink,ErrPressureLink,DatiLoadLink,ErrLoadLink,DatiExtensometerLink,DatiNTCExtensometerLink,...
|
|
ErrExtensometerLink,Dati3DExtensometerLink,DatiNTC3DExtensometerLink,Err3DExtensometerLink,...
|
|
DatiWireExtensometerLink,DatiNTCWireExtensometerLink,ErrWireExtensometerLink,...
|
|
DatiMultiPointExtensometer,DatiNTCMultiPointExtensometer,ErrMultiPointExtensometer,...
|
|
DatiAnalogLink,ErrAnalogLink,DatiCrackLink,DatiNTCCrackLink,ErrCrackLink,Dati3DCrackLink,DatiNTC3DCrackLink,...
|
|
Err3DCrackLink,Dati2DCrackLink,DatiNTC2DCrackLink,Err2DCrackLink,DatiStressMeter,DatiNTCStressMeter,...
|
|
ErrStressMeter,yesTLH,ChEL,EL_NTC,Ch3DEL,EL3D_NTC,ChWEL,WEL_NTC,~,~,~,~,ChCrL,CrL_NTC,...
|
|
Ch3DCrL,CrL3D_NTC,Ch2DCrL,CrL2D_NTC,ChSM,SM_NTC,Batteria] = letturaHybrid(IDcentralina,DTcatena,datainiTLH,tempoiniTLH,...
|
|
NodoTiltLinkH,NuovoZeroTLH,yesTLH,rTLH,date,time,catena,conn,FileName);
|
|
else
|
|
% Lettura dati da DB
|
|
[Batteria,DatiTunnelLink,ErrTunnelLink,datainiTuL,...
|
|
DatiRadialLink,ErrRadialLink,datainiRL,DatiTiltLinkH,ErrTiltLinkH,datainiTLH,...
|
|
DatiTiltLinkHRH,ErrTiltLinkHRH,datainiTLHRH,DatiPreConvLink,ErrPreConvLink,datainiPCL,...
|
|
DatiPreConvLinkHR,ErrPreConvLinkHR,datainiPCLHR,DatiPressureLink,ErrPressureLink,...
|
|
DatiLoadLink,ErrLoadLink,DatiExtensometerLink,DatiExtensometerLink_Rif,...
|
|
DatiNTCExtensometerLink,ErrExtensometerLink,Dati3DExtensometerLink,ChEL,EL_NTC,...
|
|
Dati3DExtensometerLink_Rif,DatiNTC3DExtensometerLink,Err3DExtensometerLink,ErrNTC3DExtensometerLink,Ch3DEL,EL3D_NTC,...
|
|
DatiWireExtensometerLink,DatiNTCWireExtensometerLink,ErrWireExtensometerLink,ChWEL,WEL_NTC,...
|
|
DatiMultiPointExtensometer,DatiNTCMultiPointExtensometer,ErrMultiPointExtensometer,ErrNTCMultiPointExtensometer,~,~,...
|
|
DatiAnalogLink,ErrAnalogLink,datainiAL,~,~,...
|
|
DatiCrackLink,DatiNTCCrackLink,ErrCrackLink,ChCrL,CrL_NTC,...
|
|
Dati3DCrackLink,DatiNTC3DCrackLink,Err3DCrackLink,ErrNTC3DCrackLink,Ch3DCrL,CrL3D_NTC,...
|
|
Dati2DCrackLink,DatiNTC2DCrackLink,Err2DCrackLink,ErrNTC2DCrackLink,Ch2DCrL,CrL2D_NTC,...
|
|
DatiStressMeter,DatiStressMeter_Rif,DatiNTCStressMeter,DatiNTCStressMeter_Rif,ErrStressMeter,ChSM,SM_NTC,...
|
|
yesTuL,yesRL,yesTLH,yesTLHRH,yesPCL,yesPCLHR,yesPL,yesLL,yesEL,yes3DEL,...
|
|
yesWEL,yesMPBEL,yesAL,yesCrL,yes3DCrL,yes2DCrL,yesSM] = ...
|
|
lettura_Dati(IDcentralina,DTcatena,datainiTuL,tempoiniTuL,NodoTunnelLink,NuovoZeroTuL,date_AC,time_AC,Nodo_AC,...
|
|
datainiRL,tempoiniRL,NodoRadialLink,NuovoZeroRL,datainiTLH,tempoiniTLH,NodoTiltLinkH,NuovoZeroTLH,...
|
|
datainiTLHRH,tempoiniTLHRH,NodoTiltLinkHRH,NuovoZeroTLHRH,datainiPCL,tempoiniPCL,NodoPreConvLink,NuovoZeroPCL,...
|
|
datainiPCLHR,tempoiniPCLHR,NodoPreConvLinkHR,NuovoZeroPCLHR,datainiPL,tempoiniPL,NodoPressureLink,NuovoZeroPrL,...
|
|
datainiLL,tempoiniLL,NodoLoadLink,NuovoZeroLL,datainiEL,tempoiniEL,Date_Rif_EL,NodoExtensometerLink,NuovoZeroEL,...
|
|
dataini3DEL,tempoini3DEL,Date_Rif_3DEL,Nodo3DExtensometerLink,NuovoZero3DEL,...
|
|
datainiWEL,tempoiniWEL,NodoWireExtensometerLink,NuovoZeroWEL,...
|
|
datainiMPBEL,tempoiniMPBEL,NodoMultiPointRodExtensometer,NuovoZeroMPBEL,...
|
|
datainiAL,tempoiniAL,NodoAnalogLink,NumBasi,NuovoZeroAL,...
|
|
datainiCrL,tempoiniCrL,NodoCrackLink,NuovoZeroCrL,dataini3DCrL,tempoini3DCrL,Nodo3DCrackLink,NuovoZero3DCrL,...
|
|
dataini2DCrL,tempoini2DCrL,Nodo2DCrackLink,NuovoZero2DCrL,...
|
|
datainiSM,tempoiniSM,Date_Rif_SM,NodoStressMeter,NuovoZeroSM,yesTuL,yesRL,yesTLH,...
|
|
yesTLHRH,yesPCL,yesPCLHR,yesPL,yesLL,yesEL,yes3DEL,yesWEL,yesMPBEL,yesAL,yesCrL,...
|
|
yes3DCrL,yes2DCrL,yesSM,rTuL,rRL,rTLH,rTLHRH,rPCL,rPCLHR,rPrL,...
|
|
rLL,rEL,r3DEL,rWEL,rMPBEL,rAL,rCrL,r3DCrL,r2DCrL,rSM,conn,catena,date,time,FileName);
|
|
end
|
|
|
|
% Centralina
|
|
[DATA,Tcentralina] = centralina(IDcentralina,DTcatena,catena,datainiTuL,tempoiniTuL,...
|
|
datainiRL,tempoiniRL,datainiTLH,tempoiniTLH,datainiTLHRH,tempoiniTLHRH,...
|
|
datainiPCL,tempoiniPCL,datainiPCLHR,tempoiniPCLHR,datainiLL,tempoiniLL,datainiPrL,...
|
|
tempoiniPrL,datainiEL,tempoiniEL,dataini3DEL,tempoini3DEL,datainiWEL,tempoiniWEL,...
|
|
datainiCrL,tempoiniCrL,dataini3DCrL,tempoini3DCrL,datainiMPBEL,tempoiniMPBEL,conn);
|
|
|
|
DataLogger = [DATA cell2mat(Batteria(:,3)) cell2mat(Tcentralina(:,3))];
|
|
xlswrite('Dati.xlsx',DataLogger,1);
|
|
|
|
%% Parte di definizione dati, conversione in unità fisiche e calcolo medie
|
|
|
|
% --- Tunnel Link ---
|
|
if yesTuL == 1 % attiva l'elaborazione dei Tunnel Link
|
|
% definizione dei dati
|
|
[TimeTuL,accTuL,magTuL,tempTuL,ay_TuL,ay_TuL_AC,ErrTunnelLink] = defDatiTuL_Dati(...
|
|
DatiTunnelLink,ay_TuL,ay_TuL_AC,Ndatidespike,rTuL,NuovoZeroTuL,ErrTunnelLink,...
|
|
MEMS,FileName);
|
|
% Conversione dei dati grezzi
|
|
[accTuL,ris_acc_TuL,magTuL,ris_mag_TuL,T_TuL,ay_TuL,ay_TuL_AC] = conv_grezziTuL(...
|
|
rTuL,accTuL,magTuL,tempTuL,DCalTuLTot,ay_TuL,t_TuL,ay_TuL_AC,t_TuL_AC,...
|
|
NuovoZeroTuL,MEMS,FileName);
|
|
xlswrite('Dati.xlsx',accTuL,4);
|
|
xlswrite('Dati.xlsx',magTuL,5);
|
|
xlswrite('Dati.xlsx',ris_acc_TuL,6);
|
|
xlswrite('Dati.xlsx',ris_mag_TuL,7);
|
|
xlswrite('Dati.xlsx',T_TuL,8);
|
|
% media mobile dei dati
|
|
[ARRAYdate_TuL,accTuL,ACCdefRis_TuL,TempDef_TuL,ay_TuL,ay_TuL_AC] = ...
|
|
MediaDati_TuL(accTuL,TimeTuL,ris_acc_TuL,ay_TuL,ay_TuL_AC,NdatiMedia,...
|
|
T_TuL,NuovoZeroTuL,FileName);
|
|
else
|
|
ARRAYdate_TuL = [];
|
|
text = 'There are not data to convert for Tunnel Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiTunnelLink
|
|
clear tempTuL
|
|
clear DCalTuLTot
|
|
clear t_TuL
|
|
clear t_TuL_AC
|
|
clear ris_acc_TuL
|
|
clear T_TuL
|
|
clear TimeTuL
|
|
|
|
% --- Radial Link ---
|
|
if yesRL == 1 % attiva l'elaborazione dei Radial Link
|
|
% definizione dei dati
|
|
[TimeRL,accRL,tempRL,ErrRadialLink] = defDatiRL(DatiRadialLink,...
|
|
ErrRadialLink,Ndatidespike,rRL,MEMS,FileName);
|
|
xlswrite('Dati.xlsx',accRL,2);
|
|
xlswrite('Dati.xlsx',magRL,3);
|
|
% Conversione dei dati grezzi
|
|
[accRL,ris_acc_RL,T_RL] = conv_grezziRL(rRL,accRL,tempRL,DCalRLTot,MEMS,FileName);
|
|
xlswrite('Dati.xlsx',accRL,4);
|
|
xlswrite('Dati.xlsx',magRL,5);
|
|
xlswrite('Dati.xlsx',ris_acc_RL,6);
|
|
xlswrite('Dati.xlsx',ris_mag_RL,7);
|
|
xlswrite('Dati.xlsx',T_RL,8);
|
|
% media mobile dei dati
|
|
[ARRAYdate_RL,accRL,ACCdefRis_RL,TempDef_RL] = MediaDati_RL(accRL,...
|
|
TimeRL,ris_acc_RL,NdatiMedia,T_RL,FileName);
|
|
else
|
|
text = 'There are not data to convert for Radial Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
ARRAYdate_RL = [];
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiRadialLink
|
|
clear tempRL
|
|
clear DCalRLTot
|
|
clear ris_acc_RL
|
|
clear T_RL
|
|
clear TimeRL
|
|
|
|
% --- Tilt Link H ---
|
|
if yesTLH == 1 % attiva l'elaborazione dei Tilt Link H
|
|
% definizione dei dati
|
|
[TimeTLH,accTLH,tempTLH,ErrTiltLinkH] = defDatiTLH(...
|
|
DatiTiltLinkH,ErrTiltLinkH,Ndatidespike,rTLH,MEMS,FileName);
|
|
xlswrite('Dati.xlsx',accTLH,2);
|
|
xlswrite('Dati.xlsx',magTLH,3);
|
|
% conversione dei dati grezzi
|
|
[accTLH,ris_acc_TLH,tempTLH,ErrTiltLinkH] = conv_grezziTLH(rTLH,...
|
|
accTLH,tempTLH,DCalTLHTot,ErrTiltLinkH,MEMS,FileName);
|
|
xlswrite('Dati.xlsx',accTLH,4);
|
|
xlswrite('Dati.xlsx',magTLH,5);
|
|
xlswrite('Dati.xlsx',ris_acc_TLH,6);
|
|
xlswrite('Dati.xlsx',ris_mag_TLH,7);
|
|
xlswrite('Dati.xlsx',T_TLH,8);
|
|
% media mobile dei dati
|
|
[ARRAYdate_TLH,accTLH,ACCdefRis_TLH,TempDef_TLH] = MediaDati_TLH(...
|
|
accTLH,TimeTLH,ris_acc_TLH,NdatiMedia,tempTLH,FileName);
|
|
else
|
|
text = 'There are not data to convert for Tilt Link H';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
ARRAYdate_TLH = [];
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiTiltLinkH
|
|
clear tempTLH
|
|
clear DCalTLHTot
|
|
clear ris_acc_TLH
|
|
clear T_TLH
|
|
clear TimeTLH
|
|
|
|
% --- Tilt Link HR H ---
|
|
if yesTLHRH == 1 % attiva l'elaborazione dei Tilt Link HR H
|
|
% definizione dei dati
|
|
[TimeTLHRH,angTLHRH,tempTLHRH,ErrTiltLinkHRH] = defDatiTLHRH(...
|
|
DatiTiltLinkHRH,ErrTiltLinkHRH,Ndatidespike,NodoTiltLinkHRH,rTLHRH,...
|
|
IDcentralina,DTcatena,FileName);
|
|
% conversione dei dati grezzi
|
|
[angTLHRH,tempTLHRH] = conv_grezziTLHRH(angTLHRH,tempTLHRH,DCalTLHRHTot,...
|
|
rTLHRH,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_TLHRH,AngDef_TLHRH,TempDef_TLHRH] = MediaDati_TLHRH(angTLHRH,...
|
|
TimeTLHRH,NdatiMedia,tempTLHRH,FileName);
|
|
else
|
|
text = 'There are not data to convert for Tilt Link HR H';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
ARRAYdate_TLHRH = [];
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiTiltLinkHRH
|
|
clear tempTLHRH
|
|
clear DCalTLHRHTot
|
|
clear ang_TLHRH
|
|
clear TimeTLHRH
|
|
|
|
% --- PreConv Link ---
|
|
if yesPCL == 1 % attiva l'elaborazione dei PreConv Link
|
|
% definizione dei dati
|
|
[TimePCL,accPCL,tempPCL,ErrPreConvLink] = defDatiPCL(DatiPreConvLink,...
|
|
ErrPreConvLink,Ndatidespike,rPCL,MEMS,FileName);
|
|
xlswrite('Dati.xlsx',accPCL,2);
|
|
xlswrite('Dati.xlsx',magPCL,3);
|
|
% conversione dei dati grezzi
|
|
[accPCL,ris_acc_PCL,T_PCL] = conv_grezziPCL(rPCL,accPCL,tempPCL,DCalPCLTot,...
|
|
MEMS,FileName);
|
|
xlswrite('Dati.xlsx',accPCL,4);
|
|
xlswrite('Dati.xlsx',magPCL,5);
|
|
xlswrite('Dati.xlsx',ris_acc_PCL,6);
|
|
xlswrite('Dati.xlsx',ris_mag_PCL,7);
|
|
xlswrite('Dati.xlsx',T_PCL,8);
|
|
% media mobile dei dati
|
|
[ARRAYdate_PCL,accPCL,ACCdefRis_PCL,TempDef_PCL] = MediaDati_PCL(...
|
|
accPCL,TimePCL,ris_acc_PCL,NdatiMedia,T_PCL,FileName);
|
|
else
|
|
text = 'There are not data to convert for PreConv Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
ARRAYdate_PCL = [];
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiPreConvLink
|
|
clear tempPCL
|
|
clear TimePCL
|
|
clear DCalPCLTot
|
|
clear ris_acc_PCL
|
|
clear T_PCL
|
|
|
|
% --- PreConv Link HR ---
|
|
if yesPCLHR == 1 % attiva l'elaborazione dei PreConv Link HR
|
|
% definizione dei dati
|
|
[TimePCLHR,angPCLHR,tempPCLHR,ErrPreConvLinkHR] = defDatiPCLHR(...
|
|
DatiPreConvLinkHR,ErrPreConvLinkHR,NodoPreConvLinkHR,Ndatidespike,rPCLHR,...
|
|
IDcentralina,DTcatena,FileName);
|
|
% conversione dei dati grezzi
|
|
[angPCLHR,tempPCLHR] = conv_grezziPCLHR(angPCLHR,tempPCLHR,DCalPCLHRTot,...
|
|
rPCLHR,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_PCLHR,AngDef_PCLHR,TempDef_PCLHR] = MediaDati_PCLHR(...
|
|
angPCLHR,TimePCLHR,NdatiMedia,tempPCLHR,FileName);
|
|
else
|
|
text = 'There are not data to convert for PreConv Link HR';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
ARRAYdate_PCLHR = [];
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiPreConvLinkHR
|
|
clear angPCLHR
|
|
clear tempPCLHR
|
|
clear DCalPCLHRTot
|
|
clear T_PCLHR
|
|
clear TimePCLHR
|
|
|
|
% --- Pressure Link ---
|
|
if yesPL == 1 % arriva l'elaborazione dei Pressure Link
|
|
% definizione dei dati
|
|
[TimePL,Pressure,ErrPressureLink] = defDatiPL(DatiPressureLink,...
|
|
ErrPressureLink,Ndatidespike,rPrL,FileName);
|
|
% conversione dei dati grezzi
|
|
DatiPressure = conv_grezziPL(Pressure,DCalPLTot,NodoPressureLink,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_PL,DatiPressure] = MediaDati_PL(DatiPressure,TimePL,NdatiMedia,FileName);
|
|
else
|
|
ARRAYdate_PL = [];
|
|
DatiPressure = [];
|
|
text = 'There are not data to convert for Pressure Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiPressureLink
|
|
clear TimePL
|
|
clear Pressure
|
|
clear DCalPLTot
|
|
|
|
% --- Load Link ---
|
|
if yesLL == 1 % attiva l'elaborazione dei Load Link
|
|
% definizione dei dati
|
|
[TimeLL,Load,ErrLoadLink] = defDatiLL(DatiLoadLink,ErrLoadLink,...
|
|
Ndatidespike,rLL,FileName);
|
|
% Conversione dei dati grezzi
|
|
DatiLoad = conv_grezziLL(Load,DCalLLTot,NodoLoadLink,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_LL,DatiLoad] = MediaDati_LL(DatiLoad,TimeLL,NdatiMedia,FileName);
|
|
else
|
|
ARRAYdate_LL = [];
|
|
DatiLoad = [];
|
|
text = 'There are not data to convert for Load Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiLoadLink
|
|
clear TimeLL
|
|
clear Load
|
|
clear DCalLLTot
|
|
|
|
% --- Extensometer Link ---
|
|
if yesEL == 1
|
|
% definizione dei dati
|
|
[TimeEL,Extensometer,NTCExtensometer,ErrExtensometerLink]...
|
|
= defDatiEL(DatiExtensometerLink,DatiNTCExtensometerLink,ErrExtensometerLink,...
|
|
ChEL,EL_NTC,rEL,Ndatidespike,FileName);
|
|
% Conversione dei dati grezzi
|
|
[DatiExtensometer,DatiExtensometer_Rif,DatiNTCExtensometer,ErrExtensometerLink]...
|
|
= conv_grezziEL(Extensometer,NTCExtensometer,DatiExtensometerLink_Rif,DCalELTot,EL_NTC,...
|
|
NodoExtensometerLink,ErrExtensometerLink,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_EL,DatiExtensometer] = MediaDati_EL(DatiExtensometer,TimeEL,NdatiMedia,FileName);
|
|
% Sottraggo la misura di riferimento
|
|
DatiExtensometer = DatiExtensometer - DatiExtensometer_Rif(1,:);
|
|
else
|
|
ARRAYdate_EL = [];
|
|
DatiExtensometer = [];
|
|
DatiNTCExtensometer = [];
|
|
text = 'There are not data to convert for Extensometer Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiExtensometerLink
|
|
clear DatiNTCExtensometerLink
|
|
clear DatiExtensometerLink_Rif
|
|
clear TimeEL
|
|
clear Extensometer
|
|
clear NTCExtensometer
|
|
clear DCalELTot
|
|
clear DatiExtensometer_Rif
|
|
|
|
% --- 3D Extensometer Link ---
|
|
if yes3DEL == 1
|
|
% definizione dei dati
|
|
[Time3DEL,Extensometer3D,Extensometer3D_Rif,NTCExtensometer3D,...
|
|
Err3DExtensometerLink,ErrNTC3DExtensometerLink] = ...
|
|
defDati3DEL(Dati3DExtensometerLink,Dati3DExtensometerLink_Rif,...
|
|
DatiNTC3DExtensometerLink,Err3DExtensometerLink,ErrNTC3DExtensometerLink,...
|
|
Nodo3DExtensometerLink,r3DEL,Ch3DEL,EL3D_NTC,Ndatidespike,FileName);
|
|
% Conversione dei dati grezzi
|
|
[DatiExtensometer3D,DatiExtensometer3D_Rif,DatiNTCExtensometer3D,...
|
|
Err3DExtensometerLink] = conv_grezzi3DEL(Extensometer3D,NTCExtensometer3D,...
|
|
Extensometer3D_Rif,DCalEL3DTot,Nodo3DExtensometerLink,Err3DExtensometerLink,...
|
|
r3DEL,EL3D_NTC,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_3DEL,DatiExtensometer3D] = MediaDati_3DEL(DatiExtensometer3D,Time3DEL,...
|
|
NdatiMedia,FileName);
|
|
% Sottraggo la misura di riferimento
|
|
DatiExtensometer3D = DatiExtensometer3D - DatiExtensometer3D_Rif(1,:);
|
|
else
|
|
ARRAYdate_3DEL = [];
|
|
DatiExtensometer3D = [];
|
|
DatiNTCExtensometer3D = [];
|
|
text = 'There are not data to convert for 3D Extensometer Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear Dati3DExtensometerLink
|
|
clear DatiNTC3DExtensometerLink
|
|
clear Dati3DExtensometerLink_Rif
|
|
clear Time3DEL
|
|
clear Extensometer3D
|
|
clear NTCExtensometer3D
|
|
clear DCal3DELTot
|
|
clear DatiExtensometer3D_Rif
|
|
|
|
% --- Wire Extensometer Link ---
|
|
if yesWEL == 1
|
|
% definizione dei dati
|
|
[TimeWEL,WireExtensometer,NTCWireExtensometer,ErrWireExtensometerLink]...
|
|
= defDatiWEL(DatiWireExtensometerLink,DatiNTCWireExtensometerLink,...
|
|
ErrWireExtensometerLink,ChWEL,WEL_NTC,rWEL,Ndatidespike,FileName);
|
|
% Conversione dei dati grezzi
|
|
[DatiWireExtensometer,DatiNTCWireExtensometer,ErrWireExtensometerLink] = conv_grezziWEL(...
|
|
WireExtensometer,NTCWireExtensometer,DCalWELTot,NodoWireExtensometerLink,...
|
|
ErrWireExtensometerLink,WEL_NTC,rWEL,Tmax,Tmin,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_WEL,DatiWireExtensometer] = MediaDati_WEL(DatiWireExtensometer,...
|
|
TimeWEL,NdatiMedia,FileName);
|
|
else
|
|
ARRAYdate_WEL = [];
|
|
DatiWireExtensometer = [];
|
|
DatiNTCWireExtensometer = [];
|
|
text = 'There are not data to convert for Wire Extensometer Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiWireExtensometerLink
|
|
clear DatiNTCWireExtensometerLink
|
|
clear TimeWEL
|
|
clear WireExtensometer
|
|
clear NTCWireExtensometer
|
|
clear DCalWELTot
|
|
|
|
% --- MultiPoint Rod Extensometer ---
|
|
if yesMPBEL == 1
|
|
% definizione dei dati
|
|
[TimeMPBEL,DatiMPBEL,~,ErrMultiPointExtensometer] = ...
|
|
defDatiMPBEL(DatiMultiPointExtensometer,DatiNTCMultiPointExtensometer,...
|
|
ErrMultiPointExtensometer,FileName);
|
|
% Conversione dei dati grezzi
|
|
DatiMultiBase = conv_grezziMPBEL(DatiMPBEL,NumBasi,DCalMPBELTot,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_MPBEL,DatiMultiBase] = MediaDati_MPBEL(DatiMultiBase,TimeMPBEL,NdatiMedia,FileName);
|
|
else
|
|
ARRAYdate_MPBEL = [];
|
|
DatiMultiBase = [];
|
|
text = 'There are not data to convert for MultiPoint Borehole Rod Extensometer';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiMultiPointExtensometer
|
|
clear DatiNTCMultiPointExtensometer
|
|
clear TimeMPBEL
|
|
clear DCalMPBELTot
|
|
|
|
% --- Analog Link ---
|
|
if yesAL == 1
|
|
% definizione dei dati
|
|
[TimeAL,ADCAnalog,ErrAnalogLink] = defDatiAL(DatiAnalogLink,ErrAnalogLink,FileName);
|
|
% Conversione dei dati grezzi
|
|
DatiAnalog = conv_grezziAL(ADCAnalog,DCalALTot,NodoAnalogLink,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_AL,DatiAnalog] = MediaDati_AL(DatiAnalog,TimeAL,NdatiMedia,FileName);
|
|
else
|
|
ARRAYdate_AL = [];
|
|
DatiAnalog = [];
|
|
text = 'There are not data to convert for Analog Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiAnalogLink
|
|
clear ADCAnalog
|
|
clear TimeAL
|
|
clear DCalALTot
|
|
|
|
% --- Crack Link ---
|
|
if yesCrL == 1
|
|
% definizione dei dati
|
|
[TimeCrL,Crack,NTCCrack,ErrCrackLink] = defDatiCrL(DatiCrackLink,...
|
|
DatiNTCCrackLink,ErrCrackLink,ChCrL,CrL_NTC,rCrL,Ndatidespike,FileName);
|
|
% Conversione dei dati grezzi
|
|
[DatiCrack,DatiNTCCrack,ErrCrackLink] = conv_grezziCrL(Crack,NTCCrack,DCalCrLTot,...
|
|
NodoCrackLink,ErrCrackLink,CrL_NTC,rCrL,NuovoZeroCrL,IDcentralina,DTcatena,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_CrL,DatiCrack] = MediaDati_CrL(DatiCrack,TimeCrL,NdatiMedia,FileName);
|
|
else
|
|
ARRAYdate_CrL = [];
|
|
DatiCrack = [];
|
|
DatiNTCCrack = [];
|
|
text = 'There are not data to convert for Crack Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiCrackLink
|
|
clear TimeCrL
|
|
clear Crack
|
|
clear NTCCrack
|
|
clear DCalCrLTot
|
|
|
|
% --- 2D Crack Link ---
|
|
if yes2DCrL == 1
|
|
% definizione dei dati
|
|
[Time2DCrL,Crack2D,NTCCrack2D,Err2DCrackLink,ErrNTC2DCrackLink] = ...
|
|
defDati2DCrL(Dati2DCrackLink,DatiNTC2DCrackLink,Err2DCrackLink,ErrNTC2DCrackLink,...
|
|
r2DCrL,Nodo2DCrackLink,Ch2DCrL,CrL2D_NTC,Ndatidespike,FileName);
|
|
% Conversione dei dati grezzi
|
|
[Dati2DCrack,DatiNTCCrack2D,Err2DCrackLink] = conv_grezzi2DCrL(...
|
|
Crack2D,NTCCrack2D,DCal2DCrLTot,Nodo2DCrackLink,Err2DCrackLink,CrL2D_NTC,...
|
|
r2DCrL,NuovoZero2DCrL,IDcentralina,DTcatena,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_2DCrL,Dati2DCrack] = MediaDati_2DCrL(Dati2DCrack,Time2DCrL,NdatiMedia,FileName);
|
|
else
|
|
ARRAYdate_2DCrL = [];
|
|
Dati2DCrack = [];
|
|
DatiNTCCrack2D = [];
|
|
text = 'There are not data to convert for 2D Crack Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
clear Dati2DCrackLink
|
|
clear Time2DCrL
|
|
clear Crack2D
|
|
clear DCal2DCrLTot
|
|
clear DatiNTC2DCrackLink
|
|
|
|
% --- 3D Crack Link ---
|
|
if yes3DCrL == 1
|
|
% definizione dei dati
|
|
[Time3DCrL,Crack3D,NTCCrack3D,Err3DCrackLink,ErrNTC3DCrackLink] = ...
|
|
defDati3DCrL(Dati3DCrackLink,DatiNTC3DCrackLink,Err3DCrackLink,ErrNTC3DCrackLink,...
|
|
r3DCrL,Nodo3DCrackLink,Ch3DCrL,CrL3D_NTC,Ndatidespike,FileName);
|
|
% Conversione dei dati grezzi
|
|
[Dati3DCrack,DatiNTCCrack3D,Err3DCrackLink] = conv_grezzi3DCrL(...
|
|
Crack3D,NTCCrack3D,DCal3DCrLTot,Nodo3DCrackLink,Err3DCrackLink,CrL3D_NTC,...
|
|
r3DCrL,NuovoZero3DCrL,IDcentralina,DTcatena,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_3DCrL,Dati3DCrack] = MediaDati_3DCrL(Dati3DCrack,Time3DCrL,NdatiMedia,FileName);
|
|
else
|
|
ARRAYdate_3DCrL = [];
|
|
Dati3DCrack = [];
|
|
DatiNTCCrack3D = [];
|
|
text = 'There are not data to convert for 3D Crack Link';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
clear Dati3DCrackLink
|
|
clear Time3DCrL
|
|
clear Crack3D
|
|
clear DCal3DCrLTot
|
|
clear DatiNTC3DCrackLink
|
|
|
|
% --- Stress Meter ---
|
|
if yesSM == 1
|
|
% definizione dei dati
|
|
[TimeSM,Stress,NTCStress,ErrStressMeter] = defDatiSM(DatiStressMeter,...
|
|
DatiNTCStressMeter,ErrStressMeter,ChSM,SM_NTC,rSM,Ndatidespike,FileName);
|
|
% Conversione dei dati grezzi
|
|
[DatiStress,DatiNTCStress,ErrStressMeter] = conv_grezziSM(Stress,NTCStress,...
|
|
DatiStressMeter_Rif,DatiNTCStressMeter_Rif,DCalSMTot,NodoStressMeter,ErrStressMeter,...
|
|
SM_NTC,rSM,FileName);
|
|
% media mobile dei dati
|
|
[ARRAYdate_SM,DatiStress] = MediaDati_SM(DatiStress,TimeSM,NdatiMedia,FileName);
|
|
else
|
|
ARRAYdate_SM = [];
|
|
DatiStress = [];
|
|
DatiNTCStress = [];
|
|
text = 'There are not data to convert for Stress Meter';
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
clear text
|
|
end
|
|
% Pulisco le variabili non più utilizzate
|
|
clear DatiStressMeter
|
|
clear DatiNTCStressMeter
|
|
clear TimeSM
|
|
clear Stress
|
|
clear NTCStress
|
|
clear DCalSMTot
|
|
|
|
%% Parte di Elaborazione
|
|
|
|
% --- Analisi Tunnel Link ---
|
|
if yesTuL == 1
|
|
margine = 1; % margine di n gg prima
|
|
[X_TuL,Xstar_TuL,Y_TuL,Z_TuL,Zstar_TuL,Xlocal_TuL,Ylocal_TuL,Zlocal_TuL,...
|
|
SegStar,HShift_local_TuL,TempDef_TuL,ARRAYdate_TuL,Area_TuL,Speed_local_TuL,...
|
|
Acceleration_local_TuL,ErrTunnelLink] = elab2D_TuL(rTuL,accTuL,ay_TuL,ay_TuL_AC,...
|
|
ACCdefRis_TuL,SpeTuL,IDcentralina,DTcatena,DatiElabTunnelLink,NuovoZeroTuL,...
|
|
TempDef_TuL,tolleranzaAcc,Ndevst,Wdevst,NdatiMedia,Ndatidespike,ARRAYdate_TuL,...
|
|
data1_AC,Nodo_AC,margine,ErrTunnelLink,Tmax,Tmin,datainiTuL,FileName);
|
|
xlswrite('Dati.xlsx',Xlocal_TuL',9);
|
|
xlswrite('Dati.xlsx',Ylocal_TuL',10);
|
|
xlswrite('Dati.xlsx',Zlocal_TuL',11);
|
|
xlswrite('Dati.xlsx',X_TuL',12);
|
|
xlswrite('Dati.xlsx',Y_TuL',13);
|
|
xlswrite('Dati.xlsx',Z_TuL',14);
|
|
xlswrite('Dati.xlsx',SegStar',15);
|
|
xlswrite('Dati.xlsx',HShift_local_TuL',16);
|
|
xlswrite('Dati.xlsx',TempDef_TuL,17);
|
|
xlswrite('Dati.xlsx',ARRAYdate_TuL,18);
|
|
xlswrite('Dati.xlsx',Area_TuL',19);
|
|
xlswrite('Dati.xlsx',Speed_local_TuL',20);
|
|
xlswrite('Dati.xlsx',Acceleration_local_TuL',21);
|
|
xlswrite('Dati.xlsx',ErrTunnelLink',22);
|
|
else
|
|
[X_TuL,Xstar_TuL,Y_TuL,Z_TuL,Zstar_TuL,Xlocal_TuL,Ylocal_TuL,Zlocal_TuL,...
|
|
SegStar,HShift_local_TuL,TempDef_TuL,Area_TuL,Speed_local_TuL,...
|
|
Acceleration_local_TuL] = matrici_vuote_TuL(FileName);
|
|
end
|
|
clear DatiElabTunnelLink
|
|
clear rTuL
|
|
clear accTuL
|
|
clear ay_TuL
|
|
clear ay_TuL_AC
|
|
clear data1_AC
|
|
clear ACCdefRis_TuL
|
|
clear SpeTuL
|
|
clear DatiElabTunnelLink
|
|
clear NuovoZeroTuL
|
|
clear Nodo_AC
|
|
clear data1_AC
|
|
% fine elaborazione Tunnel Link
|
|
|
|
% --- Analisi Radial Link ---
|
|
if yesRL == 1
|
|
[X_RL,Y_RL,Z_RL,Xlocal_RL,Ylocal_RL,Zlocal_RL,TempDef_RL,ARRAYdate_RL,...
|
|
ErrRadialLink] = elab2D_RL(rRL,accRL,ACCdefRis_RL,SpeRL,IDcentralina,DTcatena,...
|
|
DatiElabRadialLink,NuovoZeroRL,tolleranzaAcc,TempDef_RL,Ndevst,Wdevst,ARRAYdate_RL,...
|
|
elab_option,NdatiMedia,Ndatidespike,margine,ErrRadialLink,Tmax,Tmin,datainiRL,FileName);
|
|
xlswrite('Dati.xlsx',Xlocal_RL',9);
|
|
xlswrite('Dati.xlsx',Ylocal_RL',10);
|
|
xlswrite('Dati.xlsx',Zlocal_RL',11);
|
|
xlswrite('Dati.xlsx',X_RL',12);
|
|
xlswrite('Dati.xlsx',Y_RL',13);
|
|
xlswrite('Dati.xlsx',Z_RL',14);
|
|
xlswrite('Dati.xlsx',ARRAYdate_RL,15);
|
|
xlswrite('Dati.xlsx',ErrRadialLink',16);
|
|
else
|
|
[X_RL,Y_RL,Z_RL,Xlocal_RL,Ylocal_RL,Zlocal_RL,TempDef_RL] = matrici_vuote_RL(FileName);
|
|
end
|
|
clear DatiElabRadialLink
|
|
clear accRL
|
|
clear SpeRL
|
|
clear ACCdefRis_RL
|
|
clear NuovoZeroRL
|
|
clear rRL
|
|
% fine elaborazione Radial Link
|
|
|
|
% --- Tilt Link H ---
|
|
if yesTLH == 1
|
|
if strcmp(IDcentralina,'ID0142') == 1 && strcmp(DTcatena,'DT0173')
|
|
[Y_TLH,Z_TLH,Ylocal_TLH,Zlocal_TLH,AlfaX_TLH,AlfaY_TLH,TempDef_TLH,...
|
|
speed_TLH,speed_local_TLH,acceleration_TLH,acceleration_local_TLH,ARRAYdate_TLH,...
|
|
ErrTiltLinkH] = elab2D_TLH_Hybrid(IDcentralina,DTcatena,rTLH,accTLH,ACCdefRis_TLH,...
|
|
TempDef_TLH,SpeTLH,PsTLH,tolleranzaAcc,DatiElabTiltLinkH,Ndevst,Wdevst,...
|
|
ARRAYdate_TLH,NuovoZeroTLH,NdatiMedia,Ndatidespike,ErrTiltLinkH,margine,...
|
|
Tmax,Tmin,datainiTLH,FileName);
|
|
else
|
|
[Y_TLH,Z_TLH,Ylocal_TLH,Zlocal_TLH,AlfaX_TLH,AlfaY_TLH,TempDef_TLH,...
|
|
speed_TLH,speed_local_TLH,acceleration_TLH,acceleration_local_TLH,ARRAYdate_TLH,...
|
|
ErrTiltLinkH] = elab2D_TLH(IDcentralina,DTcatena,rTLH,accTLH,ACCdefRis_TLH,...
|
|
TempDef_TLH,SpeTLH,PsTLH,tolleranzaAcc,DatiElabTiltLinkH,Ndevst,Wdevst,...
|
|
ARRAYdate_TLH,NuovoZeroTLH,NdatiMedia,Ndatidespike,ErrTiltLinkH,margine,...
|
|
elab_option,Tmax,Tmin,datainiTLH,FileName);
|
|
end
|
|
else
|
|
[Y_TLH,Z_TLH,Ylocal_TLH,Zlocal_TLH,AlfaX_TLH,AlfaY_TLH,TempDef_TLH,...
|
|
speed_TLH,speed_local_TLH,acceleration_TLH,acceleration_local_TLH] = matrici_vuote_TLH(FileName);
|
|
end
|
|
clear DatiElabTiltLinkH
|
|
clear accTLH
|
|
clear ACCdefRis_TLH
|
|
clear SpeTLH
|
|
clear PsTLH
|
|
clear NuovoZeroTLH
|
|
% fine elaborazione Tilt Link H
|
|
|
|
% --- Tilt Link HR H ---
|
|
if yesTLHRH == 1
|
|
[Y_TLHRH,Z_TLHRH,Ylocal_TLHRH,Zlocal_TLHRH,AlfaX_TLHRH,AlfaY_TLHRH,...
|
|
TempDef_TLHRH,speed_TLHRH,speed_local_TLHRH,acceleration_TLHRH,acceleration_local_TLHRH,...
|
|
ARRAYdate_TLHRH,ErrTiltLinkHRH] = elab2D_TLHRH(rTLHRH,AngDef_TLHRH,TempDef_TLHRH,...
|
|
SpeTLHRH,PsTLHRH,DatiElabTiltLinkHRH,Ndevst_HR,Wdevst_HR,ARRAYdate_TLHRH,...
|
|
NuovoZeroTLHRH,NdatiMedia,Ndatidespike,ErrTiltLinkHRH,margine,elab_option,...
|
|
Tmax,Tmin,datainiTLHRH,FileName);
|
|
else
|
|
[Y_TLHRH,Z_TLHRH,Ylocal_TLHRH,Zlocal_TLHRH,AlfaX_TLHRH,AlfaY_TLHRH,TempDef_TLHRH,...
|
|
speed_TLHRH,speed_local_TLHRH,acceleration_TLHRH,acceleration_local_TLHRH] = matrici_vuote_TLHRH(FileName);
|
|
end
|
|
clear calotta_base
|
|
clear DatiElabTiltLinkHRH
|
|
clear AngDef_TLHRH
|
|
clear SpeTLHRH
|
|
clear PsTLHRH
|
|
clear NuovoZeroTLHRH
|
|
% fine elaborazione Tilt Link HR H
|
|
|
|
% --- PreConv Link ---
|
|
if yesPCL == 1
|
|
[Y_PCL,Z_PCL,Ylocal_PCL,Zlocal_PCL,AlfaX_PCL,AlfaY_PCL,TempDef_PCL,...
|
|
speed_PCL,speed_local_PCL,acceleration_PCL,acceleration_local_PCL,ARRAYdate_PCL,...
|
|
ErrPreConvLink] = elab2D_PCL(IDcentralina,DTcatena,rPCL,accPCL,ACCdefRis_PCL,...
|
|
TempDef_PCL,SpePCL,tolleranzaAcc,DatiElabPreConvLink,Ndevst,Wdevst,ARRAYdate_PCL,...
|
|
NuovoZeroPCL,NdatiMedia,Ndatidespike,ErrPreConvLink,margine,elab_option,...
|
|
Tmax,Tmin,datainiPCL,FileName);
|
|
else
|
|
[Y_PCL,Z_PCL,Ylocal_PCL,Zlocal_PCL,AlfaX_PCL,AlfaY_PCL,TempDef_PCL,...
|
|
speed_PCL,speed_local_PCL,acceleration_PCL,acceleration_local_PCL] = matrici_vuote_PCL(FileName);
|
|
end
|
|
clear DatiElabPreConvLink
|
|
clear accPCL
|
|
clear ACCdefRis_PCL
|
|
clear SpePCL
|
|
clear tolleranzaAcc
|
|
clear DatiElabPreConvLink
|
|
clear NuovoZeroPCL
|
|
clear rPCL
|
|
clear Ndevst
|
|
clear Wdevst
|
|
% fine elaborazione PreConv Link
|
|
|
|
% --- PreConv Link HR ---
|
|
if yesPCLHR == 1
|
|
[Y_PCLHR,Z_PCLHR,Ylocal_PCLHR,Zlocal_PCLHR,AlfaX_PCLHR,AlfaY_PCLHR,TempDef_PCLHR,...
|
|
speed_PCLHR,speed_local_PCLHR,acceleration_PCLHR,acceleration_local_PCLHR,ARRAYdate_PCLHR,...
|
|
ErrPreConvLinkHR] = elab2D_PCLHR(IDcentralina,DTcatena,rPCLHR,AngDef_PCLHR,...
|
|
TempDef_PCLHR,SpePCLHR,DatiElabPreConvLinkHR,Ndevst_HR,Wdevst_HR,ARRAYdate_PCLHR,...
|
|
NuovoZeroPCLHR,NdatiMedia,Ndatidespike,ErrPreConvLinkHR,margine,elab_option,Tmax,Tmin,...
|
|
datainiPCLHR,FileName);
|
|
else
|
|
[Y_PCLHR,Z_PCLHR,Ylocal_PCLHR,Zlocal_PCLHR,AlfaX_PCLHR,AlfaY_PCLHR,TempDef_PCLHR,...
|
|
speed_PCLHR,speed_local_PCLHR,acceleration_PCLHR,acceleration_local_PCLHR] = matrici_vuote_PCLHR(FileName);
|
|
end
|
|
clear DatiElabPreConvLinkHR
|
|
clear rPCLHR
|
|
clear AngDef_PCLHR
|
|
clear SpePCLHR
|
|
clear elab_option
|
|
clear Ndevst_HR
|
|
clear Wdevst_HR
|
|
clear NuovoZeroPCLHR
|
|
clear NdatiMedia
|
|
clear Ndatidespike
|
|
clear tolleranzaT
|
|
clear margine
|
|
clear elab_option
|
|
|
|
% --- 3D Extensometer Link ---
|
|
% Correzione 3D Extensometer Link
|
|
if yes3DEL == 1
|
|
[r,~] = size(Err3DExtensometerLink);
|
|
Matrice_err = zeros(r,r3DEL);
|
|
for i = 1:r % date
|
|
d = 1;
|
|
for n = 1:r3DEL % nodi
|
|
j = 1;
|
|
err = Err3DExtensometerLink(i,d:d+2);
|
|
while j <= 3
|
|
if err(1,j) == 1
|
|
Matrice_err(i,n) = 1;
|
|
end
|
|
j = j+1;
|
|
end
|
|
d = d+3;
|
|
end
|
|
end
|
|
Err3DExtensometerLink = Matrice_err;
|
|
Join = find(ErrNTC3DExtensometerLink);
|
|
[rJ,cJ] = size(Join);
|
|
for ii = 1:rJ
|
|
for jj = 1:cJ
|
|
if Err3DExtensometerLink(Join(ii,jj)) == 0
|
|
Err3DExtensometerLink(Join(ii,jj)) = 0.5;
|
|
end
|
|
end
|
|
end
|
|
end
|
|
clear ErrNTC3DExtensometerLink
|
|
|
|
% --- Crack Link ---
|
|
if yesCrL == 1
|
|
NomeFile = ['' IDcentralina '-' DTcatena '-RifCrL.csv'];
|
|
if NuovoZeroCrL == 0 % prima elaborazione
|
|
csvwrite(NomeFile,DatiCrack(1,:));
|
|
DatiCrack = DatiCrack - DatiCrack(1,:);
|
|
else % Ci sono già dei dati elaborati
|
|
RIF = csvread(NomeFile);
|
|
DatiCrack = DatiCrack - RIF;
|
|
end
|
|
end
|
|
|
|
% --- 3D Crack Link ---
|
|
if yes3DCrL == 1
|
|
[r,~] = size(Err3DCrackLink);
|
|
Matrice_err = zeros(r,r3DCrL);
|
|
for i = 1:r % date
|
|
d = 1;
|
|
for n = 1:r3DCrL % nodi
|
|
j = 1;
|
|
err = Err3DCrackLink(i,d:d+2);
|
|
while j <= 3
|
|
if err(1,j) == 1
|
|
Matrice_err(i,n) = 1;
|
|
end
|
|
j = j+1;
|
|
end
|
|
d = d+3;
|
|
end
|
|
end
|
|
Err3DCrackLink = Matrice_err;
|
|
Join = find(ErrNTC3DCrackLink);
|
|
[rJ,cJ] = size(Join);
|
|
for ii = 1:rJ
|
|
for jj = 1:cJ
|
|
if Err3DCrackLink(Join(ii,jj)) == 0
|
|
Err3DCrackLink(Join(ii,jj)) = 0.5;
|
|
end
|
|
end
|
|
end
|
|
end
|
|
clear ErrNTC3DCrackLink
|
|
|
|
% --- 2D Crack Link ---
|
|
if yes2DCrL == 1
|
|
[r,~] = size(Err2DCrackLink);
|
|
Matrice_err = zeros(r,r2DCrL);
|
|
for i = 1:r % date
|
|
d = 1;
|
|
for n = 1:r2DCrL % nodi
|
|
j = 1;
|
|
err = Err2DCrackLink(i,d:d+1);
|
|
while j <= 2
|
|
if err(1,j) == 1
|
|
Matrice_err(i,n) = 1;
|
|
end
|
|
j = j+1;
|
|
end
|
|
d = d+2;
|
|
end
|
|
end
|
|
Err2DCrackLink = Matrice_err;
|
|
Join = find(ErrNTC2DCrackLink);
|
|
[rJ,cJ] = size(Join);
|
|
for ii = 1:rJ
|
|
for jj = 1:cJ
|
|
if Err2DCrackLink(Join(ii,jj)) == 0
|
|
Err2DCrackLink(Join(ii,jj)) = 0.5;
|
|
end
|
|
end
|
|
end
|
|
end
|
|
clear ErrNTC2DCrackLink
|
|
|
|
% --- MultiPoint Borehole Extensometer Link ---
|
|
% Correzione MultiPoint Extensometer
|
|
if yesMPBEL == 1
|
|
[r,~] = size(ErrMultiPointExtensometer);
|
|
Matrice_err = zeros(r,rMPBEL);
|
|
for i = 1:r % date
|
|
d = 1;
|
|
for n = 1:rMPBEL % nodi
|
|
j = 1;
|
|
err = ErrMultiPointExtensometer(i,d:d+NumBasi-1);
|
|
while j <= NumBasi
|
|
if err(1,j) == 1
|
|
Matrice_err(i,n) = 1;
|
|
end
|
|
j = j+1;
|
|
end
|
|
d = d+NumBasi;
|
|
end
|
|
end
|
|
ErrMultiPointExtensometer = Matrice_err;
|
|
Join = find(ErrNTCMultiPointExtensometer);
|
|
[rJ,cJ] = size(Join);
|
|
for ii = 1:rJ
|
|
for jj = 1:cJ
|
|
if ErrMultiPointExtensometer(Join(ii,jj)) == 0
|
|
ErrMultiPointExtensometer(Join(ii,jj)) = 0.5;
|
|
end
|
|
end
|
|
end
|
|
end
|
|
clear ErrNTCMultiPointExtensometer
|
|
|
|
toc
|
|
text = ['ATD calculation ended in ' num2str(toc) ' seconds.'];
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
|
|
RC = 0;
|
|
|
|
end
|
|
|