69 lines
2.9 KiB
Matlab
Executable File
69 lines
2.9 KiB
Matlab
Executable File
% Funzione che converte i dati in mV/V della cella di carico in dati di
|
|
% forza mediante i valori di calibrazione.
|
|
% Il risultato è la matrico DatiLoad
|
|
|
|
function DatiMultiBase = conv_grezziMPBEL(DatiMPBEL,NumBasi,DCalMPBELTot,FileName)
|
|
|
|
fileID = fopen(FileName,'a');
|
|
fmt = '%s \r';
|
|
text = 'conv_grezziMPBEL function started';
|
|
fprintf(fileID,fmt,text);
|
|
|
|
[rA,cA] = size(DatiMPBEL);
|
|
DatiMultiBase = zeros(rA,cA);
|
|
|
|
%% Conversione da mV/V a mm
|
|
% Spacchetto i parametri di calibrazione
|
|
gain = DCalMPBELTot;
|
|
|
|
% contatori
|
|
ii = 1;
|
|
num = 1;
|
|
|
|
while ii <= cA
|
|
if NumBasi == 1
|
|
DatiMultiBase(:,ii) = (1/gain(num,1))*DatiMPBEL(:,ii); % conversione
|
|
ii = ii+1;
|
|
num = num+1;
|
|
elseif NumBasi == 2
|
|
DatiMultiBase(:,ii) = 1/(gain(num,1))*DatiMPBEL(:,ii); % conversione
|
|
DatiMultiBase(:,ii+1) = 1/(gain(num,2))*DatiMPBEL(:,ii+1); % conversione
|
|
ii = ii+2;
|
|
num = num+1;
|
|
elseif NumBasi == 3
|
|
DatiMultiBase(:,ii) = 1/(gain(num,1))*DatiMPBEL(:,ii); % conversione
|
|
DatiMultiBase(:,ii+1) = 1/(gain(num,2))*DatiMPBEL(:,ii+1); % conversione
|
|
DatiMultiBase(:,ii+2) = 1/(gain(num,3))*DatiMPBEL(:,ii+2); % conversione
|
|
ii = ii+3;
|
|
num = num+1;
|
|
elseif NumBasi == 4
|
|
DatiMultiBase(:,ii) = 1/(gain(num,1))*DatiMPBEL(:,ii); % conversione
|
|
DatiMultiBase(:,ii+1) = 1/(gain(num,2))*DatiMPBEL(:,ii+1); % conversione
|
|
DatiMultiBase(:,ii+2) = 1/(gain(num,3))*DatiMPBEL(:,ii+2); % conversione
|
|
DatiMultiBase(:,ii+3) = 1/(gain(num,4))*DatiMPBEL(:,ii+3); % conversione
|
|
ii = ii+4;
|
|
num = num+1;
|
|
elseif NumBasi == 5
|
|
DatiMultiBase(:,ii) = 1/(gain(num,1))*DatiMPBEL(:,ii); % conversione
|
|
DatiMultiBase(:,ii+1) = 1/(gain(num,2))*DatiMPBEL(:,ii+1); % conversione
|
|
DatiMultiBase(:,ii+2) = 1/(gain(num,3))*DatiMPBEL(:,ii+2); % conversione
|
|
DatiMultiBase(:,ii+3) = 1/(gain(num,4))*DatiMPBEL(:,ii+3); % conversione
|
|
DatiMultiBase(:,ii+4) = 1/(gain(num,5))*DatiMPBEL(:,ii+4); % conversione
|
|
ii = ii+5;
|
|
num = num+1;
|
|
elseif NumBasi == 6
|
|
DatiMultiBase(:,ii) = 1/(gain(num,1))*DatiMPBEL(:,ii); % conversione
|
|
DatiMultiBase(:,ii+1) = 1/(gain(num,2))*DatiMPBEL(:,ii+1); % conversione
|
|
DatiMultiBase(:,ii+2) = 1/(gain(num,3))*DatiMPBEL(:,ii+2); % conversione
|
|
DatiMultiBase(:,ii+3) = 1/(gain(num,4))*DatiMPBEL(:,ii+3); % conversione
|
|
DatiMultiBase(:,ii+4) = 1/(gain(num,5))*DatiMPBEL(:,ii+4); % conversione
|
|
DatiMultiBase(:,ii+5) = 1/(gain(num,6))*DatiMPBEL(:,ii+5); % conversione
|
|
ii = ii+6;
|
|
num = num+1;
|
|
end
|
|
end
|
|
|
|
text = 'Calibrations of MultiPoint Borehole Rod Extensometer defined correctly. conv_grezziMPBEL function closed';
|
|
fprintf(fileID,fmt,text);
|
|
fclose(fileID);
|
|
end |