Sync from remote server: 2025-10-12 18:56:41
This commit is contained in:
42
ATD/conv_grezziAL.m
Executable file
42
ATD/conv_grezziAL.m
Executable file
@@ -0,0 +1,42 @@
|
||||
% 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 DatiAnalog = conv_grezziAL(ADCAnalog,DCalALTot,NodoAnalogLink,FileName)
|
||||
|
||||
fileID = fopen(FileName,'a');
|
||||
fmt = '%s \r';
|
||||
text = 'conv_grezziAL function started';
|
||||
fprintf(fileID,fmt,text);
|
||||
|
||||
numAL = size(NodoAnalogLink); % numero di Analog Link
|
||||
[rA,cA] = size(ADCAnalog);
|
||||
DatiAnalog = zeros(rA,cA);
|
||||
|
||||
for jj=1:numAL
|
||||
if strcmp(NodoAnalogLink(jj,3),'4-20 mA')
|
||||
%% Conversione da 4-20 mA parabolica
|
||||
% Spacchetto i parametri di calibrazione
|
||||
a = DCalALTot(:,1);
|
||||
b = DCalALTot(:,2);
|
||||
c = DCalALTot(:,3);
|
||||
DatiAnalog(:,jj) = a(jj,1)*(ADCAnalog(:,jj).^2)+b(jj,1)*ADCAnalog(:,jj)+c(jj,1); % conversione
|
||||
elseif strcmp(NodoAnalogLink(jj,3),'mV/V')
|
||||
%% Conversione da mV/V lineare
|
||||
% Spacchetto i parametri di calibrazione
|
||||
a = DCalALTot(:,1);
|
||||
DatiAnalog(:,jj) = a(jj,1)*ADCAnalog(:,jj); % conversione
|
||||
elseif strcmp(NodoAnalogLink(jj,3),'Hertz')
|
||||
%% Conversione da Hertz lineare
|
||||
% Spacchetto i parametri di calibrazione
|
||||
GF = DCalALTot(:,1);
|
||||
BF = DCalALTot(:,2);
|
||||
digit = (ADCAnalog(:,jj).^2)*0.001; % Freq. ^2 *E-3
|
||||
DatiAnalog(:,jj) = GF(jj,1)*BF(jj,1)*digit(:,1); % conversione in microEpsilon
|
||||
end
|
||||
end
|
||||
|
||||
text29 = 'Calibrations of Analog Link defined correctly. conv_grezziAL function closed';
|
||||
fprintf(fileID,fmt,text29);
|
||||
fclose(fileID);
|
||||
end
|
||||
Reference in New Issue
Block a user