% Funzione che converte i dati ADC della cella di carico in dati di forza % mediante i valori di calibrazione. % Il risultato è la matrico DatiLoad function DatiLoad = conv_grezziLL(ADCLoad,DCalLLTot,NodoLoadLink,FileName) text = 'conv_grezziLL function started'; fileID = fopen(FileName,'a'); fmt = '%s \r'; fprintf(fileID,fmt,text); if strcmp(NodoLoadLink(1,4),'mV/V') || strcmp(NodoLoadLink(1,4),'ADC') caLoad = DCalLLTot(:,1); intLoad = DCalLLTot(:,2); elseif strcmp(NodoLoadLink(1,4),'4-20 mA') a_Load = DCalLLTot(:,1); b_Load = DCalLLTot(:,2); c_Load = DCalLLTot(:,3); end %% Conversione dei punti ADC in dati di carico [rL,cL] = size(ADCLoad); DatiLoad = zeros(rL,cL); for j=1:rL % date for i=1:cL % nodi if strcmp(NodoLoadLink(i,4),'mV/V') || strcmp(NodoLoadLink(i,4),'ADC') DatiLoad(j,i) = caLoad(i,1)*ADCLoad(j,i) + intLoad(i,1); % conversione lineare elseif strcmp(NodoLoadLink(i,4),'4-20 mA') DatiLoad(j,i) = a_Load(i,1)*ADCLoad(j,i).^2 + b_Load(i,1)*ADCLoad(j,i) + c_Load(i,1); % conversione parabolica end end end text = 'Raw Data of Load Link converted into physycal units correctly. conv_grezziLL function closed'; fprintf(fileID,fmt,text); fclose(fileID); end