62 lines
2.1 KiB
Matlab
Executable File
62 lines
2.1 KiB
Matlab
Executable File
%% Funzione che corregge gli angoli di alcuni nodi specifici
|
|
function angRSN = azzeramenti(conn,IDcentralina,DTcatena,angRSN,NodoRSNLink,ARRAYdateRSN,FileName)
|
|
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
text = 'azzeramenti function started';
|
|
fprintf(fileID,fmt,text);
|
|
|
|
NomeFile = strcat(IDcentralina,'-',DTcatena,'-','Azzeramenti.txt');
|
|
if isfile(NomeFile) == 1
|
|
Dati = importdata(NomeFile);
|
|
if Dati(1,1) == 99999
|
|
else
|
|
[c,~] = size(Dati);
|
|
i = 1;
|
|
while i <= c
|
|
if Dati(i,1) == 99999
|
|
break
|
|
else
|
|
NodeType ='RSN Link';
|
|
indice = Dati(i);
|
|
|
|
NodeNumRSN = num2str(cell2mat(NodoRSNLink(indice,2)));
|
|
dataRIF = num2str(ARRAYdateRSN(end)-7);
|
|
comando = ['select AlfaX, AlfaY from ElabDataView where EventDate >= ''' ...
|
|
dataRIF ''' and UnitName = ''' IDcentralina ...
|
|
''' and ToolNameID = ''' DTcatena ''' and NodeType = ''' NodeType ...
|
|
''' and NodeNum =' NodeNumRSN ' '];
|
|
curs = exec(conn,comando);
|
|
curs = fetch(curs);
|
|
Riferimento = curs.Data;
|
|
|
|
angRSN(:,2*indice-1:2*indice) = Riferimento(end,1:2);
|
|
text = ['Node RSN Link number ' NodeNumRSN ' has been corrected by azzeramenti function'];
|
|
fprintf(fileID,fmt,text);
|
|
i=i+1;
|
|
end
|
|
end
|
|
end
|
|
else
|
|
fclose(fileID);
|
|
Parametro1 = 99999;
|
|
Parametro2 = 999999999;
|
|
outdat = fopen(NomeFile,'wt+');
|
|
fopen(NomeFile,'wt');
|
|
fmt = '%d \r';
|
|
fileA = fopen(NomeFile,'a');
|
|
fprintf(fileA,fmt,Parametro1);
|
|
fprintf(fileA,fmt,Parametro2);
|
|
fclose(fileA);
|
|
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
text = 'azzeramenti function created the reference file correctly';
|
|
fprintf(fileID,fmt,text);
|
|
end
|
|
|
|
text = 'azzeramenti function executed correctly';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
end
|