1.
Listati Matlab
A.1
Creazione delle curve caratteristiche
Si riportano ora i listati Matlab utilizzati per la creazione delle curve caratteristiche, nelle due configurazioni utilizzate per gli esperimenti. Per semplicità tutti i programmi riportati saranno riferiti all’induttore DAPAMITO4.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % % %
% CALCOLO DELLA CURVA CARATTERISTICA PER PROVE NON CAVITANTI % % SULL'INDUTTORE DAPAMITO4 % % % % Piero Miloro 2009 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clc clear all close all %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % CARTTERISTICHE DELL'ESPERIMENTO % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Velocità di rotazione
rpm=2500; % [Giri al minuto] % Vettore delle Portate volumetriche
Q=10^(-3)*[25.50,25.00,24.51,23.98,23.49,22.95,22.43,22.03,21.42,21.14,... 20.55,19.92,19.47,18.98,18.50,17.92,17.45,17.01,16.60,16.00,... 15.48,14.95,14.51,14.05,13.50,12.90,12.45,11.96,11.52,10.95,... 10.47,9.90,9.34,9.03,8.40,8.00,7.47,6.93,6.54,6.00,5.54,... 5.00,4.51,4.05,3.59,3.08,2.53,2.07,1.51,1.04];
% [m^3/s] Valori da inserire manualmente % Vettore delle Temperature
T=[15.5,15.9,15.6,16.2,16.1,15.5,16.0,16.1,16.0,15.9,16.2,16.2,16.5,... 17.0,16.3,16.6,16.8,16.2,17.2,17.0,15.1,15.2,15.4,15.7,15.5,16.0,... 15.7,15.8,16.0,16.0,15.9,16.0,16.0,16.0,16.3,16.3,16.0,16.3,16.3,... 16.1,16.6,16.8,16.6,16.6,17.0,16.8,17.0,17.0,16.9,17.1];
% [°C] Valori da inserire manualmente
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CARICAMENTO DELLE MATRICI DI DATI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Caricamento dati delle prove a motore fermo load ('DAP4_1_2500_0000.txt')
% Caricamento dei dati acquisiti load ('DAP4_1_2500.txt') load ('DAP4_2_2500.txt') load ('DAP4_3_2500.txt') load ('DAP4_4_2500.txt') load ('DAP4_5_2500.txt') load ('DAP4_6_2500.txt') load ('DAP4_7_2500.txt') load ('DAP4_8_2500.txt') load ('DAP4_9_2500.txt') load ('DAP4_10_2500.txt') load ('DAP4_11_2500.txt') load ('DAP4_12_2500.txt') load ('DAP4_13_2500.txt') load ('DAP4_14_2500.txt') load ('DAP4_15_2500.txt') load ('DAP4_16_2500.txt')
load ('DAP4_17_2500.txt') load ('DAP4_18_2500.txt') load ('DAP4_19_2500.txt') load ('DAP4_20_2500.txt') load ('DAP4_21_2500.txt') load ('DAP4_22_2500.txt') load ('DAP4_23_2500.txt') load ('DAP4_24_2500.txt') load ('DAP4_25_2500.txt') load ('DAP4_26_2500.txt') load ('DAP4_27_2500.txt') load ('DAP4_28_2500.txt') load ('DAP4_29_2500.txt') load ('DAP4_30_2500.txt') load ('DAP4_31_2500.txt') load ('DAP4_32_2500.txt') load ('DAP4_33_2500.txt') load ('DAP4_34_2500.txt') load ('DAP4_35_2500.txt') load ('DAP4_36_2500.txt') load ('DAP4_37_2500.txt') load ('DAP4_38_2500.txt') load ('DAP4_39_2500.txt') load ('DAP4_40_2500.txt') load ('DAP4_41_2500.txt') load ('DAP4_42_2500.txt') load ('DAP4_43_2500.txt') load ('DAP4_44_2500.txt') load ('DAP4_45_2500.txt') load ('DAP4_46_2500.txt') load ('DAP4_47_2500.txt') load ('DAP4_48_2500.txt') load ('DAP4_49_2500.txt') load ('DAP4_50_2500.txt')
% Matrice dei dati acquisiti: crea una matrice con tutti i dati acquisiti
M=[DAP4_1_2500,DAP4_2_2500,DAP4_3_2500,DAP4_4_2500,DAP4_5_2500,... DAP4_6_2500,DAP4_7_2500,DAP4_8_2500,DAP4_9_2500,DAP4_10_2500,... DAP4_11_2500,DAP4_12_2500,DAP4_13_2500,DAP4_14_2500,DAP4_15_2500,... DAP4_16_2500,DAP4_17_2500,DAP4_18_2500,DAP4_19_2500,DAP4_20_2500,... DAP4_21_2500,DAP4_22_2500,DAP4_23_2500,DAP4_24_2500,DAP4_25_2500,... DAP4_26_2500,DAP4_27_2500,DAP4_28_2500,DAP4_29_2500,DAP4_30_2500,... DAP4_31_2500,DAP4_32_2500,DAP4_33_2500,DAP4_34_2500,DAP4_35_2500,... DAP4_36_2500,DAP4_37_2500,DAP4_38_2500,DAP4_39_2500,DAP4_40_2500,... DAP4_41_2500,DAP4_42_2500,DAP4_43_2500,DAP4_44_2500,DAP4_45_2500,... DAP4_46_2500,DAP4_47_2500,DAP4_48_2500,DAP4_49_2500,DAP4_50_2500];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% PARAMETRI FISSI PER GLI ESPERIMENTI SULL'INDUTTORE DAPAMITO4 % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Parametri geometrici dell'induttore
R_in=0.0253; % [m] Raggio del mozzo all'ingresso dell'induttore R_out=0.05334; % [m] Raggio del mozzo all'uscita dell'induttore Rt=0.081; % [m] Raggio massimo delle pale
% Parametri della camera di prova
cl=0.0008; % [m] Valore nominale della clearence;
batt_idro= 0.06; % [bar] Correzione di pressione per il % trasduttore assoluto dovuto al battente idrostatico
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% INTERPOLAZIONE PER IL CALCOLO DELLA DENSITA' DELL'ACQUA % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% T_ref=[100,80,60,40,30,25,22,20,15,10,4,0,-10,-20,-30]; % [°C] rho_ref=1000*[0.9584,0.9718,0.9832,0.9922,0.99565,0.99705,0.99777,... 0.99821,0.9991,0.9997,0.99997,0.99984,0.99812,0.99355,... 0.98385]; % [kg/m^3] rho = interp1(T_ref,rho_ref,T); % [kg/m^3] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % OPERAZIONI % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Calcolo delle aree e della velocità di rotazione in rad/s w=(rpm/60)*2*pi; % [rad/s] Velocità di rotazione R=Rt+cl; % [m] Raggio del condotto
A_in=pi*(R^2-R_in^2); % [m^2] Sezione d'ingresso A_out=pi*(R^2-R_out^2); % [m^2] Sezione d'uscita
% Costruzione dei vettori delle pressioni e della densità
[nc,nd]=size(M); % nc= numero di campioni per esperimento n=nd/13; % n= Numero di esperimenti
p_f1_dati=DAP4_1_2500_0000(:,1); p_f=(sum(p_f1_dati)/nc);
p_f_vett= ones(1,n)*p_f; % [bar] Pressione letta a motore fermo
dp_f1_dati=DAP4_1_2500_0000(:,2);
dp_f1=100000*(sum(dp_f1_dati)/nc); % [Pa] Differenza di pressione % letta dal Trasduttore 1 a motore fermo
dp_f2_dati=DAP4_1_2500_0000(:,3);
dp_f2=100000*(sum(dp_f2_dati)/nc); % [Pa] Differenza di pressione % letta dal Trasduttore 2 a motore fermo
for i=0:n-1
j=(13*i)+1;
p_in_dati(:,i+1)=M(:,j); % [bar] Vettore Pressione in ingresso k=(13*i)+2;
dp1_dati(:,i+1)=M(:,k); % [bar] Differenza di pressione: Trasduttore 1 h=(13*i)+3;
dp2_dati(:,i+1)=M(:,h); % [bar] Differenza di pressione: Trasduttore 2 end
for i=1:n
p_in_2500d4(i)=mean(p_in_dati(:,i))-batt_idro;
% [bar] Media dei valori registrati di pressione in ingresso dp1(i)=100000*(sum(dp1_dati(:,i))/nc)-dp_f1;
% [Pa] Media dei valori registrati dal Trasduttore 1 dp2(i)=100000*(sum(dp2_dati(:,i))/nc)-dp_f2;
% [Pa] Media dei valori registrati dal Trasduttore 2 end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CALCOLO DEI PARAMETRI ADIMENSIONALI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fi_2500d4=Q./(w*pi*(Rt^3)); % Coefficiente di flusso
psi1_2500d4=(dp1)./(rho*(w^2)*(Rt^2)); % Coefficiente di prevalenza_1 psi2_2500d4=(dp2)./(rho*(w^2)*(Rt^2)); % Coefficiente di prevalenza_2 v_spec_2500d4=sqrt(fi_2500d4.*pi)./(psi2_2500d4.^0.75);% Velocità specifica
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CREAZIONE DEI GRAFICI % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Curva caratteristica figure('Name','Curva caratteristica') plot(fi_2500d4,psi1_2500d4,'* r') hold on plot(fi_2500d4,psi2_2500d4,'* b') axis([0 0.08 0 0.35]) legend('Traduttore 1','Traduttore 2') xlabel('\Phi') ylabel('\Psi') grid on
title('Curva di prestazione non cavitante, \Omega=2500 rpm')
% Velocità specifica
figure('Name','Velocità specifica') plot(fi_2500d4,v_spec_2500d4,'* g') axis([0 0.08 0 2])
title('Velocità specifica, \Omega=2500rpm') xlabel('\Phi')
ylabel('\Omega_s') grid on
% Pressione in ingresso al variare del coefficiente di flusso figure('Name','Pressione in ingresso') plot (fi_2500d4,p_in_2500d4,'LineWidth',2) hold on plot (fi_2500d4,p_f_vett,'r','LineWidth',2) axis([0 0.08 0 1.8]) grid on xlabel('\Phi') ylabel('P_i_n [bar]')
title('Andamento della pressione in ingresso durante l''esperimento') legend('Andamento della pressione','Pressione a motore fermo')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% SALVATAGGIO DEI RISULTATI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
save('NC_2500d4rpm_risultati','fi_2500d4','psi2_2500d4','psi1_2500d4',... 'p_in_2500d4','v_spec_2500d4')
Si riporta ora il programma utilizzato per la configurazione con trasduttore recesso. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % % %
% CALCOLO DELLA CURVA CARATTERISTICA PER PROVE NON CAVITANTI % % --TRASDUTTORE RECESSO-- % % SULL'INDUTTORE DAPAMITO4 % % % % Piero Miloro 2010 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clc clear all close all %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % CARTTERISTICHE DELL'ESPERIMENTO % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Velocità di rotazione rpm=2500; % [Giri al minuto] % Vettore delle Portate volumetriche
Q=10^(-3)*[25.22,24.41,23.53,22.66,21.97,21.02,20.40,19.51,18.70,17.92,... 17.05,16.27,15.40,14.57,13.70,13.00,12.24,11.39,10.70,9.40,...
8.90,8.11,7.57,6.62,5.59,4.90,4.07,3.30,2.50,1.55]; % [m^3/s] Valori da inserire manualmente % Vettore delle Temperature
T=[15.8,15.8,15.8,16.0,16.1,16.3,16.2,16.1,16.4,16.3,... 16.4,16.5,16.7,16.6,16.9,16.8,16.9,16.8,16.9,17.2,...
17.2,17.2,17.4,17.3,17.7,17.4,17.7,17.8,17.8,17.8]; % [°C] Valori da inserire manualmente
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CARICAMENTO DELLE MATRICI DI DATI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Caricamento dati delle prove a motore fermo load ('DAP4_1_2500_TR_0000.txt')
% Caricamento dei dati acquisiti load ('DAP4_1_2500_TR.txt') load ('DAP4_2_2500_TR.txt') load ('DAP4_3_2500_TR.txt') load ('DAP4_4_2500_TR.txt') load ('DAP4_5_2500_TR.txt') load ('DAP4_6_2500_TR.txt') load ('DAP4_7_2500_TR.txt') load ('DAP4_8_2500_TR.txt') load ('DAP4_9_2500_TR.txt') load ('DAP4_10_2500_TR.txt') load ('DAP4_11_2500_TR.txt') load ('DAP4_12_2500_TR.txt') load ('DAP4_13_2500_TR.txt') load ('DAP4_14_2500_TR.txt') load ('DAP4_15_2500_TR.txt') load ('DAP4_16_2500_TR.txt') load ('DAP4_17_2500_TR.txt') load ('DAP4_18_2500_TR.txt') load ('DAP4_19_2500_TR.txt') load ('DAP4_20_2500_TR.txt') load ('DAP4_21_2500_TR.txt') load ('DAP4_22_2500_TR.txt') load ('DAP4_23_2500_TR.txt') load ('DAP4_24_2500_TR.txt') load ('DAP4_25_2500_TR.txt') load ('DAP4_26_2500_TR.txt') load ('DAP4_27_2500_TR.txt') load ('DAP4_28_2500_TR.txt') load ('DAP4_29_2500_TR.txt') load ('DAP4_30_2500_TR.txt')
% Matrice dei dati acquisiti: crea una matrice con tutti i dati acquisiti
M=[DAP4_1_2500_TR,DAP4_2_2500_TR,DAP4_3_2500_TR,DAP4_4_2500_TR,... DAP4_5_2500_TR,DAP4_6_2500_TR,DAP4_7_2500_TR,DAP4_8_2500_TR,... DAP4_9_2500_TR,DAP4_10_2500_TR,DAP4_11_2500_TR,DAP4_12_2500_TR,... DAP4_13_2500_TR,DAP4_14_2500_TR,DAP4_15_2500_TR,DAP4_16_2500_TR,... DAP4_17_2500_TR,DAP4_18_2500_TR,DAP4_19_2500_TR,DAP4_20_2500_TR,... DAP4_21_2500_TR,DAP4_22_2500_TR,DAP4_23_2500_TR,DAP4_24_2500_TR,... DAP4_25_2500_TR,DAP4_26_2500_TR,DAP4_27_2500_TR,DAP4_28_2500_TR,...
DAP4_29_2500_TR,DAP4_30_2500_TR];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% PARAMETRI FISSI PER GLI ESPERIMENTI SULL'INDUTTORE DAPAMITO4 % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Parametri geometrici dell'induttore
R_in=0.0253; % [m] Raggio del mozzo all'ingresso dell'induttore R_out=0.05334; % [m] Raggio del mozzo all'uscita dell'induttore Rt=0.081; % [m] Raggio massimo delle pale
% Parametri della camera di prova
cl=0.0008; % [m] Valore nominale della clearence;
batt_idro= 0.06; % [bar] Correzione di pressione per il % trasduttore assoluto dovuto al battente idrostatico
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% INTERPOLAZIONE PER IL CALCOLO DELLA DENSITA' DELL'ACQUA % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% T_ref=[100,80,60,40,30,25,22,20,15,10,4,0,-10,-20,-30]; % [°C] rho_ref=1000*[0.9584,0.9718,0.9832,0.9922,0.99565,0.99705,0.99777,... 0.99821,0.9991,0.9997,0.99997,0.99984,0.99812,0.99355,... 0.98385]; % [kg/m^3] rho = interp1(T_ref,rho_ref,T); % [kg/m^3] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % OPERAZIONI % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Calcolo delle aree e della velocità di rotazione in rad/s w=(rpm/60)*2*pi; % [rad/s] Velocità di rotazione R=Rt+cl; % [m] Raggio del condotto
A_out=pi*(R^2-R_out^2); % [m^2] Sezione d'uscita % Costruzione dei vettori delle pressioni e della densità
[nc,nd]=size(M); % nc= numero di campioni per esperimento n=nd/13; % n= Numero di esperimenti
p_f1_dati=DAP4_1_2500_TR_0000(:,1); p_f=(sum(p_f1_dati)/nc);
p_f_vett= ones(1,n)*p_f; % [bar] Pressione letta a motore fermo
p_f_rec_dati=DAP4_1_2500_TR_0000(:,4); p_f_rec=(sum(p_f_rec_dati)/nc);
p_f_rec_vett= ones(1,n)*p_f; % [bar] Pressione letta a motore fermo % dal trasduttore recesso
dp_f1_dati=DAP4_1_2500_TR_0000(:,2);
dp_f1=100000*(sum(dp_f1_dati)/nc); % [Pa] Differenza di pressione % letta dal Trasduttore 1 a motore fermo
dp_f2_dati=DAP4_1_2500_TR_0000(:,3);
dp_f2=100000*(sum(dp_f2_dati)/nc); % [Pa] Differenza di pressione % letta dal Trasduttore 2 a motore fermo
for i=0:n-1
j=(13*i)+1;
p_in_dati(:,i+1)=M(:,j); % [bar] Pressione in ingresso k=(13*i)+2;
dp1_dati(:,i+1)=M(:,k); % [bar] Differenza di pressione: Trasduttore 1 h=(13*i)+3;
dp2_dati(:,i+1)=M(:,h); % [bar] Differenza di pressione: Trasduttore 2 x=(13*i)+4;
p_in_rec_dati(:,i+1)=M(:,x);
% [bar]Pressione in ingresso trasduttore recesso end
for i=1:n
p_in_2500_trd4(i)=100000*(mean(p_in_dati(:,i))-batt_idro); % [Pa] Media dei valori di pressione in ingresso
p_in_rec_2500_trd4(i)=100000*(mean(p_in_rec_dati(:,i))-batt_idro); % [Pa] Media dei valori di pressione in ingresso trasduttore recesso dp1_sa(i)=100000*(sum(dp1_dati(:,i))/nc)-dp_f1;
% [Pa] Media dei valori registrati dal Trasduttore 1 dp2_sa(i)=100000*(sum(dp2_dati(:,i))/nc)-dp_f2; % [Pa] Media dei valori registrati dal Trasduttore 2 end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% STIMA DELLE PERDITE DI PRESSIONE PER ATTRITO % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
f=0.023; % Coefficiente di attrito stimato dal diagramma di Moody Lt=0.8; % [m] Lunghezza del tratto di tubo
Din=0.146; % [m] Diamtero in ingresso del tratto di tubo Dex=0.166; % [m] Diametro in uscita del tratto di tubo Dt=(Din+Dex)/2; % [m] Diamtero medio del tratto di tubo for i=1:n
dp_attr(i)=(8*Lt*f.*rho(i).*(Q(i).^2))/((pi^2)*(Dt^5)); % [Pa] Stima della perdite di pressione per attrito end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% STIMA DEL GUADAGNO DI PRESSIONE CON LA CONICITA' % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Ain=pi*((Din/2)^2); % [m^2] Sezione d'ingresso del tratto di tubo Aex=pi*((Dex/2)^2); % [m^2] Sezione d'uscita del tratto di tubo for i=1:n
dp_din(i)=0.5*rho(i).*(Q(i).^2).*((Aex^2-Ain^2)/(Aex^2*Ain^2)); %[Pa] Variazione della pressione dinamica
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CALCOLO DEI VALORI DI PRESSIONE % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dp1=dp1_sa+dp_attr-dp_din;
% [Pa] Variazione di pressione del Trasduttore 1 corretto dp2=dp2_sa+dp_attr-dp_din;
% [Pa] Variazione di pressione del Trasduttore 2 corretto
dp_tubo_2500_trd4=(p_in_2500_trd4-p_in_rec_2500_trd4+dp_attr-dp_din); % [Pa] Variazione di pressione all'interno del condotto
dp_prec=(dp2-dp_tubo_2500_trd4);
% [Pa] Variazione di pressione calcolato tra le stazioni originarie
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CALCOLO DEI PARAMETRI ADIMENSIONALI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fi_2500_trd4=Q./(w*pi*(Rt^3)); % Coefficiente di flusso
psi1_2500_trd4=(dp1)./(rho*(w^2)*(Rt^2)); % Coefficiente di prevalenza_1 psi2_2500_trd4=(dp2)./(rho*(w^2)*(Rt^2)); % Coefficiente di prevalenza_2 psi_prec_2500_trd4=(dp_prec)./(rho*(w^2)*(Rt^2));
% Coefficiente di prevalenza tra le stazioni originarie v_spec_2500_trd4=sqrt(fi_2500_trd4.*pi)./(psi2_2500_trd4.^0.75); % Velocità specifica
v_spec_prec_trd4=sqrt(fi_2500_trd4.*pi)./(psi_prec_2500_trd4.^0.75); % Velocità specifica tra le stazioni originarie
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CREAZIONE DEI GRAFICI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Curva caratteristica
figure ('Name','Curva caratteristica con trasduttori recessi') plot(fi_2500_trd4,psi1_2500_trd4,'* r')
hold on
plot(fi_2500_trd4,psi2_2500_trd4,'* b') plot(fi_2500_trd4,psi_prec_2500_trd4,'* g') axis([0 0.08 0 0.35])
legend('Trasduttore 1','Trasduttore 2', 'Posizione originale') title('Curva caratteristica per Omega=2500rpm')
xlabel('\Phi') ylabel('\Psi') grid on
% Velocità specifica
figure ('Name','Velocità specifica con trasduttori recessi') plot(fi_2500_trd4,v_spec_2500_trd4,'* g')
hold on
plot(fi_2500_trd4,v_spec_prec_trd4,'* b') axis([0 0.08 0 2])
ylabel('\Omega_s','FontSize',12) grid on
legend('Trasduttore recesso','Posizione originale')
% Pressione in ingresso al variare del coefficiente di flusso figure ('Name','Pressione in ingresso')
plot (fi_2500_trd4,p_in_2500_trd4/100000,'b','LineWidth',2) hold on plot (fi_2500_trd4,p_in_rec_2500_trd4/100000,'g','LineWidth',2) plot (fi_2500_trd4,dp_tubo_2500_trd4/100000,'m','LineWidth',2) plot (fi_2500_trd4,p_f_vett,'r','LineWidth',2) axis([0 0.08 0 1.4]) grid on xlabel('\Phi') ylabel('P_i_n [bar]')
legend('Trasduttore iniziale','Trasduttore recesso','Differenza',... 'Pressione a motore fermo')
% Andamento delle perdite di pressione nel tubo
figure ('Name','Variazioni di pressione dovute ad attrito e conicità') plot(fi_2500_trd4,(-dp_attr),'r')
hold on
plot(fi_2500_trd4,dp_din,'b')
plot(fi_2500_trd4,(dp_din-dp_attr),'g') axis([0 0.08 -600 600])
legend('Perdite per attrito','Guadagno per conicità','Differenza') title('Variazioni di pressione') xlabel('\Phi') ylabel('\Delta p [Pa]') grid on %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % %
% SALVATAGGIO DEI RISULTATI % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% save('NC_2500_trd4rpm_risultati','fi_2500_trd4','psi2_2500_trd4',... 'psi1_2500_trd4','p_in_2500_trd4','p_in_rec_2500_trd4',... 'dp_tubo_2500_trd4','v_spec_2500_trd4')
A.2
Creazione delle curve di prestazione cavitante
Si riportano ora i listati utilizzati per la creazione delle curve di prestazione cavitante, in modalità discreta e continua. Per limitare la quantità di dati inseriti, esse saranno riportate unicamente per la configurazione con trasduttore recesso e per l’induttore DAPAMITO4.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % % %
% CALCOLO DELLA CURVA DI PRESTAZIONE CAVITANTE DISCRETA % % --TRASDUTTORE RECESSO-- % % SULL'INDUTTORE DAPAMITO4 % % % % Piero Miloro 2010 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clc clear all close all %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % CARTTERISTICHE DELL'ESPERIMENTO % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Vettore delle velocità di rotazione
rpm=[3000,3000,3000,3000,3000,3000,3000,3000,3000,3000,3000,3000,3000,... 3000,3000,3000]; % [Giri al minuto] Valori da inserire manualmente
% Vettore delle portate volumetriche
Q=10^(-3)*[27.40,27.87,27.87,27.92,27.85,27.86,27.87,27.75,27.85,27.85,... 27.82,27.83,27.87,27.84,27.80,27.85];
% [m^3/s] Valori da inserire manualmente
% Vettore delle Temperature
16.1,16.0,15.8]; % [°C] Valori da inserire manualmente
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CARICAMENTO DELLE MATRICI DI DATI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Caricamento dati delle prove a motore fermo load ('Pin_1_100_Q_27_85_tr_0000.txt')
% Caricamento dei dati acquisiti load ('Pin_0_230_Q_27_85_tr_bis.txt') load ('Pin_0_240_Q_27_85_tr_bis.txt') load ('Pin_0_270_Q_27_85_tr.txt') load ('Pin_0_300_Q_27_85_tr.txt') load ('Pin_0_330_Q_27_85_tr.txt') load ('Pin_0_350_Q_27_85_tr.txt') load ('Pin_0_370_Q_27_85_tr.txt') load ('Pin_0_390_Q_27_85_tr.txt') load ('Pin_0_430_Q_27_85_tr.txt') load ('Pin_0_470_Q_27_85_tr.txt') load ('Pin_0_510_Q_27_85_tr.txt') load ('Pin_0_550_Q_27_85_tr.txt') load ('Pin_0_680_Q_27_85_tr.txt') load ('Pin_0_850_Q_27_85_tr.txt') load ('Pin_0_960_Q_27_85_tr.txt') load ('Pin_1_100_Q_27_85_tr.txt')
% Matrice dei dati acquisiti: crea due matrice con tutti i dati acquisiti
M_0=Pin_1_100_Q_27_85_tr_0000; % Matrice dei dati acquisiti a motore fermo
M=[Pin_0_230_Q_27_85_tr_bis,Pin_0_240_Q_27_85_tr_bis,... Pin_0_270_Q_27_85_tr,Pin_0_300_Q_27_85_tr,Pin_0_330_Q_27_85_tr,... Pin_0_350_Q_27_85_tr,Pin_0_370_Q_27_85_tr,Pin_0_390_Q_27_85_tr,... Pin_0_430_Q_27_85_tr,Pin_0_470_Q_27_85_tr,Pin_0_510_Q_27_85_tr,... Pin_0_550_Q_27_85_tr,Pin_0_680_Q_27_85_tr,Pin_0_850_Q_27_85_tr,... Pin_0_960_Q_27_85_tr,Pin_1_100_Q_27_85_tr]; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % %
% PARAMETRI FISSI PER GLI ESPERIMENTI SULL'INDUTTORE DAPAMITO4 % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Parametri geometrici dell'induttore
R_in=0.0253; % [m] Raggio del mozzo all'ingresso dell'induttore R_out=0.05334; % [m] Raggio del mozzo all'uscita dell'induttore Rt=0.081; % [m] Raggio massimo delle pale
% Parametri della camera di prova
cl=0.0008; % [m] Valore nominale della clearence;
batt_idro= 0.06; % [bar] Correzione di pressione per il % trasduttore assoluto dovuto al battente idrostatico
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% INTERPOLAZIONE PER IL CALCOLO DELLA DENSITA' DELL'ACQUA % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% T_ref=[100,80,60,40,30,25,22,20,15,10,4,0,-10,-20,-30]; % [°C] rho_ref=1000*[0.9584,0.9718,0.9832,0.9922,0.99565,0.99705,0.99777,... 0.99821,0.9991,0.9997,0.99997,0.99984,0.99812,0.99355,... 0.98385]; % [kg/m^3] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % %
% INTERPOLAZIONE PER IL CALCOLO DELLA PRESSIONE DI VAPORE DELL'ACQUA % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% T_vap_ref=275:5:370; % [°K] p_vap_ref=1e+006*[0.0006980 0.0009912 0.001388 0.001919 0.002620 ... 0.003536 0.004718 0.006230 0.008143 0.01054 0.01353 ... 0.01721 0.02171 0.02718 0.03377 0.04166 0.05105... 0.06215 0.07521 0.09047]; % [Pa] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % OPERAZIONI % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Calcolo delle aree e della velocità di rotazione in rad/s w=(rpm/60)*2*pi; % [rad/s] Velocità di rotazione
R=Rt+cl; % [m] Raggio del condotto
A_in=pi*(R^2-R_in^2); % [m^2] Sezione d'ingresso A_out=pi*(R^2-R_out^2); % [m^2] Sezione d'uscita % Calcolo della densità e della pressione di vapore dell'acqua rho = interp1(T_ref,rho_ref,T); % [kg/m^3] Vettore densità
pv=interp1(T_vap_ref,p_vap_ref,(T+273)); % [Pa] Vettore pressione di vapore
% Costruzione dei vettori delle pressioni
[nc,nd]=size(M); % nc= numero di campioni per esperimento n=nd/13; % n= Numero di esperimenti
i=0;
j=(13*i)+1;
p_in_dati_0(:,i+1)=M_0(:,j);
% [bar] Vettore Pressione in ingresso a motore fermo k=(13*i)+2;
dp1_dati_0(:,i+1)=M_0(:,k);
% [bar] Vettore Differenza di pressione Trasduttore 1 a motore fermo h=(13*i)+3;
dp2_dati_0(:,i+1)=M_0(:,h);
% [bar] Vettore Differenza di pressione Trasduttore 2 a motore fermo x=(13*i)+4;
p_in_rec_dati_0(:,i+1)=M(:,x);
% [bar] Vettore Pressione in ingresso Trasduttore recesso a motore fermo
for i=0:n-1 j=(13*i)+1;
p_in_dati(:,i+1)=M(:,j);
% [bar] Vettore Pressione in ingresso k=(13*i)+2;
dp1_dati(:,i+1)=M(:,k);
% [bar] Vettore Differenza di pressione Trasduttore 1 h=(13*i)+3;
dp2_dati(:,i+1)=M(:,h);
% [bar] Vettore Differenza di pressione Trasduttore 2 x=(13*i)+4;
p_in_rec_dati(:,i+1)=M(:,x);
% [bar] Vettore Pressione in ingresso trasduttore recesso end
p_in_0=mean(p_in_dati_0(:))-batt_idro;
% [bar] Media dei valori registrati di pressione in ingresso a motore fermo dp1_0=100000*(sum(dp1_dati_0(:))/nc);
% [Pa] Media dei valori registrati dal Trasduttore 1 a motore fermo dp2_0=100000*(sum(dp2_dati_0(:))/nc);
p_in_rec_0=mean(p_in_rec_dati_0(:))-batt_idro;
% [bar] Media dei valori registrati di pressione in ingresso a motore fermo % con trasduttore recesso
for i=1:n
p_in_0053trd4(i)=100000*(mean(p_in_dati(:,i))-batt_idro); % [Pa] Media dei valori registrati di pressione in ingresso p_in_0053trd4_rec(i)=100000*(mean(p_in_rec_dati(:,i))-batt_idro); % [Pa] Media dei valori registrati di pressione in ingresso % con trasduttore recesso
dp1_sa(i)=100000*(sum(dp1_dati(:,i))/nc)-dp1_0;
% [Pa] Media dei valori registrati di differenza di pressione_1 dp2_sa(i)=100000*(sum(dp2_dati(:,i))/nc)-dp2_0;
% [Pa] Media dei valori registrati di differenza di pressione_2 end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% STIMA DELLE PERDITE DI PRESSIONE PER ATTRITO % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
f=0.023; % Coefficiente di attrito stimato dal diagramma di Moody Lt=0.8; % [m] Lunghezza del tratto di tubo
Din=0.146; % [m] Diamtero in ingresso del tratto di tubo Dex=0.166; % [m] Diametro in uscita del tratto di tubo Dt=(Din+Dex)/2; % [m] Diamtero medio del tratto di tubo for i=1:n
dp_attr(i)=(8*Lt*f.*rho(i).*(Q(i).^2))/((pi^2)*(Dt^5)); % [Pa] Stima della perdite di pressione per attrito end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% STIMA DEL GUADAGNO DI PRESSIONE CON LA CONICITA' % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Ain=pi*((Din/2)^2); % [m^2] Sezione d'ingresso del tratto di tubo Aex=pi*((Dex/2)^2); % [m^2] Sezione d'uscita del tratto di tubo for i=1:n
dp_din(i)=0.5*rho(i).*(Q(i).^2).*((Aex^2-Ain^2)/(Aex^2*Ain^2)); %[Pa] Variazione della pressione dinamica
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CALCOLO DEI VALORI DI PRESSIONE % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dp1=dp1_sa+dp_attr-dp_din;
% [Pa] Variazione di pressione del Trasduttore 1 corretto dp2=dp2_sa+dp_attr-dp_din;
% [Pa] Variazione di pressione del Trasduttore 2 corretto dp_tubo=(p_in_0053trd4-p_in_0053trd4_rec+dp_attr-dp_din); % [Pa] Variazione di pressione all'interno del condotto dp_prec=(dp2-dp_tubo);
% [Pa] Variazione di pressione calcolato tra le stazioni originarie
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CALCOLO DEI PARAMETRI ADIMENSIONALI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fi_0053trd4=Q./(w*pi*(Rt^3)); % Coefficiente di flusso
psi1_0053trd4=(dp1)./(rho.*(w.^2)*(Rt^2)); % Coefficiente di prevalenza_1 psi2_0053trd4=(dp2)./(rho.*(w.^2)*(Rt^2)); % Coefficiente di prevalenza_2 psi_prec_0053trd4=(dp_prec)./(rho.*(w.^2)*(Rt^2));
% Coefficiente di prevalenza posizione originale
sigma_0053trd4=(p_in_0053trd4_rec-pv)./(0.5.*rho.*(w.^2)*(Rt^2)); % Numero di cavitazione
sigma_prec_0053trd4=(p_in_0053trd4-pv)./(0.5.*rho.*(w.^2)*(Rt^2)); % Numero di cavitazione posizione originale
psi2_0053trd4_ref=psi2_0053trd4(n);
% Prevalenza in condizioni non cavitanti psi2_prec_0053trd4_ref=psi_prec_0053trd4(n);
% Prevalenza in condizioni non cavitanti posizione originale psi2_0053trd4_per=psi2_0053trd4./psi2_0053trd4_ref; % Variazione percentuale del coefficiente di prevalenza
psi_prec_0053trd4_per=psi_prec_0053trd4./psi2_prec_0053trd4_ref; % Variazione percentuale del coefficiente di prevalenza posizione originale
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CREAZIONE DEI GRAFICI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Curva di prestazione cavitante
figure ('Name','Curva di prestazione cavitante') plot (sigma_0053trd4,psi2_0053trd4,'-o') hold on
plot (sigma_prec_0053trd4,psi_prec_0053trd4,'-*r') axis([0 0.4 0 0.35])
legend('Trasduttore recesso','Posizione originale') title('Curva cavitante')
xlabel('\sigma') ylabel('\Psi') grid on
% Variazione percentuale del coefficiente di prevalenza figure ('Name','Variazione percentuale')
plot(sigma_0053trd4,psi2_0053trd4_per,'-o') hold on
plot (sigma_prec_0053trd4,psi_prec_0053trd4_per,'-*r') axis([0 0.4 0 1.1])
legend('Trasduttore recesso','Posizione originale') title('Variazione percentuale di \Psi per \Phi = 0.053') xlabel('\sigma')
ylabel('\Psi/\Psi_N_C') grid on
% Pressione in ingresso al variare del numero di cavitazione figure ('Name','Variazione nella pressione in ingresso') plot (sigma_0053trd4,p_in_0053trd4) hold on plot (sigma_0053trd4,p_in_0053trd4_rec,'g') plot (sigma_0053trd4,dp_tubo,'r') axis([0 0.4 0 150000]) grid on title('Pressione in ingresso')
xlabel('\sigma trasduttore recesso') ylabel('P_i_n [Pa]')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% SALVATAGGIO DEI RISULTATI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
save('cav_fi_0053trd4_risultati','sigma_0053trd4','psi2_0053trd4',... 'fi_0053trd4')
Si riporta ora il listato per la creazione della curva di prestazione cavitante in modalità continua.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % % %
% CALCOLO DELLA CURVA DI PRESTAZIONE CAVITANTE CONTINUA % % --TRASDUTTORE RECESSO-- % % SULL'INDUTTORE DAPAMITO4 % % % % Piero Miloro 2010 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clc clear all close all %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % CARTTERISTICHE DELL'ESPERIMENTO % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Velocità di rotazione rpm=[3000]; % [Giri al minuto] % Temperature
T_letta=[49.8,50.6]; % [°C] Valori da inserire manualmente
% Durata degli esperimenti e definizione dell'intervallo per un unico dato time=4; % [minuti] Durata dell'acquisizione
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CARICAMENTO DELLE MATRICI DI DATI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Caricamento dati della prova a motore fermo load ('phi_0_053_inst_cle_08_TR_T50_0000.txt') % Caricamento dei dati acquisiti
load ('flussimetro_Q_27_85_cle_08_TR_T50_sincro.txt') load ('phi_0_053_inst_cle_08_TR_T50.txt')
% Matrice dei dati acquisiti: crea due matrice con tutti i dati acquisiti M_0=[phi_0_053_inst_cle_08_TR_T50_0000]; M=[phi_0_053_inst_cle_08_TR_T50]; Q_mamp=[(10^3)*flussimetro_Q_27_85_cle_08_TR_T50_sincro]; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % %
% PARAMETRI FISSI PER GLI ESPERIMENTI SULL'INDUTTORE DAPAMITO4 % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Parametri geometrici dell'induttore
R_in=0.0253; % [m] Raggio del mozzo all'ingresso dell'induttore R_out=0.05334; % [m] Raggio del mozzo all'uscita dell'induttore Rt=0.081; % [m] Raggio massimo delle pale
% Parametri della camera di prova
cl=0.0008; % [m] Valore nominale della clearence;
batt_idro= 0.06; % [bar] Correzione di pressione per il % trasduttore assoluto dovuto al battente idrostatico
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% INTERPOLAZIONE PER IL CALCOLO DELLA DENSITA' DELL'ACQUA % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
T_ref=[100,80,60,40,30,25,22,20,15,10,4,0,-10,-20,-30]; % [°C] rho_ref=1000*[0.9584,0.9718,0.9832,0.9922,0.99565,0.99705,0.99777,... 0.99821,0.9991,0.9997,0.99997,0.99984,0.99812,0.99355,... 0.98385]; % [kg/m^3] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % %
% INTERPOLAZIONE PER IL CALCOLO DELLA PRESSIONE DI VAPORE DELL'ACQUA % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% T_vap_ref=275:5:370; % [°K] p_vap_ref=1e+006*[0.0006980 0.0009912 0.001388 0.001919 0.002620 ... 0.003536 0.004718 0.006230 0.008143 0.01054 0.01353 ... 0.01721 0.02171 0.02718 0.03377 0.04166 0.05105... 0.06215 0.07521 0.09047]; % [Pa] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % OPERAZIONI % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Calcolo delle aree e della velocità di rotazione in rad/s w=(rpm/60)*2*pi; % [rad/s] Velocità di rotazione R=Rt+cl; % [m] Raggio del condotto
A_in=pi*(R^2-R_in^2); % [m^2] Sezione d'ingresso A_out=pi*(R^2-R_out^2); % [m^2] Sezione d'uscita
% Calcolo della densità e della pressione di vapore dell'acqua
T=(T_letta(1)+T_letta(2))/2; % [°C] Temperatura media esperimento rho= interp1(T_ref,rho_ref,T); % [Kg/m^3] Densità media esperimento pv=interp1(T_vap_ref,p_vap_ref,(T+273));
% [Pa] Pressione di vapore media esperimento % Costruzione dei vettori di pressioni e portate
[nc,nd]=size(M); % nc= numero di campioni per esperimento n=nd/13; % n= Numero di esperimenti
time_s=time*60; % [sec] Durata dell'acquisizione in secondi nv=time_s/l_c; % Numero di valori mediati calcolati sam_blocco=nc/nv; % Campioni per blocco vettore_secondi=(time_s/nv):l_c:time_s;
ad_portata=nc/np; MT=ones(ad_portata,1); Q_mamp_T=Q_mamp'; QQ=MT*Q_mamp_T; Q_mamp_completa=ones(nc,1); m=50/16; c=-(4*m); for i=1:nc Q_mamp_completa(i)=QQ(i);
% [mA] Vettore di portata delle stesse dimensione dei vettori di pressione end
dp_f_dati=M_0(:,3); dp_f=mean(dp_f_dati);
% [Pa] Media dei valori registrati dal Trasduttore 2 a motore fermo
for i=1:nv
p_in(i)=100000*(mean(M(sam_blocco*(i-1)+(1:sam_blocco),1))-batt_idro); % [bar] Vettore Pressione in ingresso
dp2_sa(i)=100000*(mean(M(sam_blocco*(i-1)+(1:sam_blocco),3))-dp_f); % [bar] Vettore Differenza di pressione Trasduttore 2
Q(i)=0.001*(m*(mean(Q_mamp_completa(sam_blocco*(i-1)+(1:sam_blocco))))+c); %[m^3/s] Vettore della portata
p_in_rec(i)=100000*(mean(M(sam_blocco*(i-1)+(1:sam_blocco),4))-batt_idro); % [bar] Vettore Pressione in ingresso trasduttore recesso
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% STIMA DELLE PERDITE DI PRESSIONE PER ATTRITO % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
f=0.023; % Coefficiente di attrito stimato dal diagramma di Moody Lt=0.8; % [m] Lunghezza del tratto di tubo
Din=0.146; % [m] Diamtero in ingresso del tratto di tubo Dex=0.166; % [m] Diametro in uscita del tratto di tubo Dt=(Din+Dex)/2; % [m] Diamtero medio del tratto di tubo for i=1:n
dp_attr(i)=(8*Lt*f.*rho(i).*(Q(i).^2))/((pi^2)*(Dt^5)); % [Pa] Stima della perdite di pressione per attrito end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% STIMA DEL GUADAGNO DI PRESSIONE CON LA CONICITA' % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Ain=pi*((Din/2)^2); % [m^2] Sezione d'ingresso del tratto di tubo Aex=pi*((Dex/2)^2); % [m^2] Sezione d'uscita del tratto di tubo for i=1:n
dp_din(i)=0.5*rho(i).*(Q(i).^2).*((Aex^2-Ain^2)/(Aex^2*Ain^2)); %[Pa] Variazione della pressione dinamica
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CALCOLO DEI VALORI DI PRESSIONE % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dp2=dp2_sa+dp_attr-dp_din;
% [Pa] Variazione di pressione del Trasduttore 2 corretto dp_tubo=(p_in-p_in_rec+dp_attr-dp_din);
% [Pa] Variazione di pressione all'interno del condotto dp_prec=(dp2-dp_tubo);
% [Pa] Variazione di pressione calcolato tra le stazioni originarie
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CALCOLO DEI PARAMETRI ADIMENSIONALI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fi_0053d4_tr_t50_cont=Q./(w*pi*(Rt^3)); % Coefficiente di flusso for i=1:nv
psi2_0053d4_tr_t50_cont(i)=(dp2(i))./(rho*(w^2)*(Rt^2)); % Coefficiente di prevalenza_2
psi2_prec_0053d4_tr_t50_cont(i)=(dp_prec(i))./(rho*(w^2)*(Rt^2)); % Coefficiente di prevalenza_2 posizione originale
sigma_0053d4_tr_t50_cont(i)=(p_in_rec(i)-pv)./(0.5.*rho*(w^2)*(Rt^2)); % Numero di cavitazione
sigma_prec_0053d4_tr_t50_cont(i)=(p_in(i)-pv)./(0.5.*rho*(w^2)*(Rt^2)); % Numero di cavitazione posizione originale
end
psi2_0053d4_tr_t50_cont_ref=psi2_0053d4_tr_t50_cont(1); % Prevalenza in condizioni non cavitanti
psi2_0053d4_tr_t50_cont_per=...
psi2_0053d4_tr_t50_cont./psi2_0053d4_tr_t50_cont_ref;
% Variazione percentuale del coefficiente di prevalenza psi2_prec_0053d4_tr_t50_cont_ref=psi2_prec_0053d4_tr_t50_cont(1); % Prevalenza in condizioni non cavitanti posizione originale psi2_prec_0053d4_tr_t50_cont_per=...
psi2_prec_0053d4_tr_t50_cont./psi2_prec_0053d4_tr_t50_cont_ref;
% Variazione percentuale del coefficiente di prevalenza posizione originale
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CREAZIONE DEI GRAFICI % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Curva di prestazione cavitante
figure('Name','Curva di prestazione cavitante')
plot (sigma_0053d4_tr_t50_cont,psi2_0053d4_tr_t50_cont,'pg',... 'MarkerFaceColor','g')
axis([0 0.4 0 0.35])
title('Prestazioni cavitanti \phi = 0.053') xlabel('\sigma') ylabel('\Psi') grid on hold on plot (sigma_prec_0053d4_tr_t50_cont,psi2_prec_0053d4_tr_t50_cont,'pr',... 'MarkerFaceColor','r')
legend ('Trasduttore recesso','Posizione originale') % Variazione percentuale del coefficiente di prevalenza figure ('Name','Variazione percentuale')
plot(sigma_0053d4_tr_t50_cont,psi2_0053d4_tr_t50_cont_per,'pg',... 'MarkerFaceColor','g')
hold on
axis([0 0.4 0 1.1])
title('Variazione percentuale di \Psi per \Phi=0.053') xlabel('\sigma')
ylabel('\Psi/\Psi_N_C') grid on
plot (sigma_prec_0053d4_tr_t50_cont,psi2_prec_0053d4_tr_t50_cont_per,... 'pr', 'MarkerFaceColor','r')
% Andamento della portata durante l'esperimento figure('Name','Andamento della portata')
plot(vettore_secondi,fi_0053d4_tr_t50_cont./0.053) axis([0 time_s 0.9 1.1])
title('Variazione percentuale di \Phi rispetto al valore nominale') xlabel('Durata esperimento [sec]')
ylabel('\Phi/\Phi_N_O_M') grid on
hold on
% Andamento delle pressioni in ingresso durante l'esperimento figure('Name','Andamento della pressione')
plot(vettore_secondi,p_in_rec) hold on
plot(vettore_secondi,p_in,'r') axis([0 time_s 0 150000])
title('Variazione della pressione in ingresso') xlabel('Durata esperimento [sec]')
ylabel('P_i_n [Pa]') grid on
legend ('Trasduttore recesso','Posizione originale')
save('cav_fi_0053d4_tr_t50_cont_risultati','sigma_0053d4_tr_t50_cont',... 'psi2_0053d4_tr_t50_cont','fi_0053d4_tr_t50_cont',...
'psi2_0053d4_tr_t50_cont_per')
A.3
Implementazione del metodo di Moore
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% IMPLEMENTAZIONE DEL METODO DI MOORE % % SULL'INDUTTORE DAPAMITO4 % % Piero Miloro 2010 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clc clear all close all %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % %
% PARAMETRI FISSI PER GLI ESPERIMENTI SULL'INDUTTORE DAPAMITO4 % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Rt=0.081;
w=(rpm/60)*2*pi; % [rad/s] Velocità di rotazione
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% SCELTA DEI VALORI DI TEMPERATURA PER L'INTERPOLAZIONE % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Temperatura da ricavare con Moore
M=1; % 1=15°C; 2=50°C; 3=65°C; 4=75°C % Temperature di partenza A=2; % 1=15°C; 2=50°C; 3=65°C; 4=75°C B=3; % 1=15°C; 2=50°C; 3=65°C; 4=75°C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % %
% CARICAMENTO DELLE MATRICI DI DATI % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% load('cav_fi_0053trd4_risultati.mat') load('cav_fi_0053tr_t50d4_risultati.mat') load('cav_fi_0053tr_t65d4_risultati.mat') load('cav_fi_0053tr_t75d4_risultati.mat') sigma0=fliplr(sigma_0053trd4); psi0=fliplr(psi2_0053trd4); sigma1=fliplr(sigma_0053tr_t50d4); psi1=fliplr(psi2_0053tr_t50d4); sigma2=fliplr(sigma_0053tr_t65d4); psi2=fliplr(psi2_0053tr_t65d4); sigma3=fliplr(sigma_0053tr_t75d4); psi3=fliplr(psi2_0053tr_t75d4); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % %
% CREAZIONE DEI VETTORI DELLE TEMPERATURE % % %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Tx=[15 50 65 75] T0=15; T1=50; T2=65; T3=75; T_C=[T0 T1 T2 T3 Tx(M)]; % [°C] T_K=T_C+273.15; % [°K] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % %
% INTERPLOAZIONE DELLE GRANDEZZE TERMODINAMICHE % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % CALORE LATENTE T_L_ref=[275:5:380]; % [°K] L_ref= [2496.8 2485.4 2473.9 2462.2 2450.3 2438.4 2426.3 2414.3 2402.0 ... 2389.8 2377.6 2365.3 2353.0 2340.5 2328.0 2315.4 2302.9 2290.1 ... 2277.3 2264.3 2251.2 2237.9].*10^3; % [J/kg] dim_T=size(T_C); for i=1:dim_T(2) L(i)=interp1(T_L_ref,L_ref,T_K(i)); end % DENSITA' VAPORE T_v_v=[275:5:380]; % [K] v_v=[181.7 130.3 94.67 69.67 51.90 39.10 29.78 22.91 17.80 13.96 11.04... 8.809 7.083 5.737 4.68 3.844 3.178 2.643 2.211 1.860 1.573 1.337]; % [m^3/kg] rho_v_ref=1./v_v; for i=1:dim_T(2) rho_v(i)=interp1(T_v_v,rho_v_ref,T_K(i)); end % CALORE SPECIFICO T_cpl_ref=273.15+[0 10 20 30 40 50 60 70 80 90 100]; % [K]
cpl_ref=[4.2176 4.1921 4.1818 4.1784 4.1785 4.1806 4.1843 4.1895 4.1963 ... 4.2050 4.2159]*10^3; % [J/kgK] for i=1:dim_T(2) cpl(i)=interp1(T_cpl_ref,cpl_ref,T_K(i)); end % DENSITA' LIQUIDO T_rho_ref=[100,80,60,40,30,25,22,20,15,10,4,0,-10,-20,-30]; rho_ref=1000*[0.9584,0.9718,0.9832,0.9922,0.99565,0.99705,0.99777,... 0.99821,0.9991,0.9997,0.99997,0.99984,0.99812,0.99355,0.98385]; for i=1:dim_T(2) rho_l(i)=interp1(T_rho_ref,rho_ref,T_C(i)); end % CONDUCIBILITA' TERMICA T_k=273.15+[0 10 20 30 40 50 60 70 80 90 100]; k_ref=[561 580 598.4 615.4 630.5 643.5 654.3 663.1 670.0 675.3 ... 679.1]*10^-3; %[W/Km] for i=1:dim_T(2) k(i)=interp1(T_k,k_ref,T_K(i)); end
% CALCOLO DELLE FUNZIONI C for i=1:dim_T(2) C(i)=((L(i)^2)*(rho_v(i)^2)/(T_K(i)*rho_l(i)*k(i))); end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % OPERAZIONI % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%CALCOLO DEL COEFFICIENTE DI PREVALENZA PERCENTUALE
psi0nc=psi0./psi0(1); psi1nc=psi1./psi1(1); psi2nc=psi2./psi2(1); psi3nc=psi3./psi3(1);
% Interpolazione per punti (Valori da inserire manualmente) psi_ref=[0.98 0.97 0.96 0.94 0.92 0.90]; sigma0_ref=[0.076 0.071 0.068 0.052 0.051 0.049]; sigma1_ref=[0.078 0.074 0.070 0.056 0.054 0.053]; sigma2_ref=[0.082 0.079 0.076 0.060 0.056 0.055]; sigma3_ref=[0.080 0.076 0.066 0.058 0.056 0.054]; % Calcolo dei valori di sigma
[x,dim_psi]=size(psi_ref); sigma_ref=[sigma0_ref;sigma1_ref;sigma2_ref;sigma3_ref]; for i=1:dim_psi delta_sigma0(i)=(sigma_ref(A,i)-sigma_ref(B,i))*(C(A)/(C(B)-C(A))); delta_sigmax(i)=delta_sigma0(i)*C(5)/C(A); sigmax(i)=sigma_ref(A,i)+delta_sigma0(i)-delta_sigmax(i); end figure('name','Metodo di Moore') plot(sigma0,psi0/psi0(1),'s-r','LineWidth',2,'MarkerFaceColor','r',... 'MarkerEdgeColor','k') hold on plot(sigma1,psi1/psi1(1),'s-b','LineWidth',2,'MarkerFaceColor','b',... 'MarkerEdgeColor','k') plot(sigma2,psi2/psi2(1),'s-m','LineWidth',2,'MarkerFaceColor','m',... 'MarkerEdgeColor','k') plot(sigma3,psi3/psi3(1),'s-g','LineWidth',2,'MarkerFaceColor','g',... 'MarkerEdgeColor','k') plot(sigmax,psi_ref,'s-c','LineWidth',2,'MarkerFaceColor','c',... 'MarkerEdgeColor','k')
legend('T=15°C dati sperimentali','T=50°C dati sperimentali',...
'T=65°C dati sperimentali','T=75°C dati sperimentali','T=15°C Moore') axis([0 0.5 0 1.1])
xlabel('\sigma') ylabel('\Psi/\Psi_N_C') grid on
A.4
Creazione dei diagrammi a cascata
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % % %
% STUDIO DELLE INSTABILITà FLUIDODINAMICHE % % SULL'INDUTTORE DAPAMITO4 %
% %
% Lucio Torre 2004 - Piero Miloro 2009 %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clc clear all close all dati0_mat=load('phi_0_059_inst_cle_08_0000.txt'); dati1_mat=load('phi_0_059_inst_cle_08.txt'); p_dati=[]; giri=3000; % [rpm] portata=30.94; % [l/s] temperatura=(15.0+15.8)/2; % [°C] batt_idro=0.06; % [bar]
psi_bar=0.0689476; % fattore di conversione 1 psi =0.0689476 bar % SCELTA DEI TRASDUTTORI
p_dati=1e005*(dati1_mat(:,1)-batt_idro); %[Pa] PCB1_dati=psi_bar*1e005*dati1_mat(:,10);
% [Pa] ad ogni colonna corrisponde un trasduttore PCB2_dati=psi_bar*1e005*dati1_mat(:,9); % [Pa] Rt=0.081; % [m] Raggio induttore
n_spettri=4000;
% Numero di punti utilizzati per il calcolo di ciascuno spettro dt=1/1000; % [s] intervallo di campionamento N_av_spec=2; % Numero di medie per ciascuno spettro [dim_p_dati,nd]=size(dati1_mat);
%CALCOLO COEFFICIENTI ADIMENSIONALI
A=pi*Rt^2; % [m^2] Sezione d'ingresso RPM=giri;
omega=2*pi*RPM/60; % [rad/s] V=portata*1e-003; % [m^3/s]
T_vspec_vett=280:5:475; % [°K] v_spec_vett=1e-003+1e-006*[0 1 1 2 4 5 7 9 11 13 15 18 21 24 27 30 34 ... 37 41 45 49 53 58 62 67 72 77 82 87 93 99 104 110 117 123 130 137 ... 144 152 159]; % [m^3/kg] T=273+temperatura; % [°K] v_spec=interp1(T_vspec_vett,v_spec_vett,T); % [m^3/kg] rho=1/v_spec; % [kg/m^3]
%CALCOLO PRESSIONE DI VAPORE IN FUNZIONE DELLA TEMPERATURA T_vap_vett=275:5:370; % K
p_vap_vett=1e+006*[0.0006980 0.0009912 0.001388 0.001919 0.002620 ... 0.003536 0.004718 0.006230 0.008143 0.01054 0.01353 0.01721 ...
0.02171 0.02718 0.03377 0.04166 0.05105 0.06215 0.07521 0.09047];% [Pa] p_vap=interp1(T_vap_vett,p_vap_vett,T); % [Pa]
phi=V/(A*omega*Rt) ; % coefficiente di flusso %CALCOLO SPETTRI
N_spettri=dim_p_dati/n_spettri; % numero di spettri p_vett_spettri=[]; p_vett_PCB1=[]; p_vett_PCB2=[];
for i=1:N_spettri p1=p_dati((n_spettri*(i-1)+1):(n_spettri*(i-1)+n_spettri)); p_vett_spettri=[p_vett_spettri p1]; p1=PCB1_dati((n_spettri*(i-1)+1):(n_spettri*(i-1)+n_spettri)); p_vett_PCB1=[p_vett_PCB1 p1]; p1=PCB2_dati((n_spettri*(i-1)+1):(n_spettri*(i-1)+n_spettri)); p_vett_PCB2=[p_vett_PCB2 p1]; end; size(p_vett_spettri); size(p_vett_PCB1);
%CALCOLO DEI VALORI MEDI DI SIGMA p_spettri_mean=[];
p_spettri_mean=mean(p_vett_spettri); sigma_spettri=[];
sigma_spettri=(p_spettri_mean-p_vap)/(0.5*rho*(omega*Rt)^2);
%ASSEGNAZIONE INTERVALLO DI SAMPLING % FREQUENZA DI NYQUIST
f_Nyq=1/(2*dt); % [Hz] %LUNGHEZZA TOTALE RECORD
Tr=n_spettri/(1/dt); % [s]
% LUNGHEZZA DEL SUBRECORD T=Tr/N_av_spec;
% IL NUMERO DI PUNTI DI SAMPLING VIENE AUMENTATO, SE NECESSARIO, PORTANDOLO
% ALLA POTENZA DI 2 PIÙ VICINA, IN ALTO
N_tot=Tr/dt; % numero totale di punti di sampling, è uguale a n_spettri N=T/dt; % numero di punti di sampling in ogni subrecord L=[]; % calcolo del numero L di zeri da aggiungere n=log2(N); n1=ceil(n); if (n1-n)==0 L=0; else L=2^n1-N; end;
% DEFINIZIONE DELLA MATRICE DEI VALORI DEL TEMPO PER LA DEFINIZIONE DELLA % FINESTRA DI TAPERING
% IL VETTORE DEI VALORI DEL TEMPO È DIVISO IN N_AV_SPEC PARTI CONSECUTIVE % LE QUALI SONO DISPOSTE SECONDO LE COLONNE DELLA MATRICE T_MAT
t_mat1=[]; t_mat=[]; for i=1:(N_spettri*N_av_spec) t_mat1=(((i-1)*(N_tot/N_av_spec)+1)*dt):dt:((i*N_tot/N_av_spec)*dt); t_mat=[t_mat t_mat1.']; end;
% SPAZIATURA DELLE FREQUENZE DI STIMA DELLO SPETTRO df=1/T; % [Hz]
% DEFINIZIONE DEL VETTORE DELLE FREQUENZE PER LA STIMA DELLO SPETTRO T_L=(N+L)*dt;
df_L=1/T_L;
omega_vett=0:(2*pi/T_L):pi/dt; % [rad/s] pulsazioni freq_vett=0:df_L:1/(2*dt); % [1/s] frequenze
%DIVISIONE DELLA MATRICE DEI DATI IN N_AV_SPEC PARTI u1_T=[]; u2_T=[]; for i=1:N_spettri p1=p_vett_PCB1(:,i); p2=p_vett_PCB2(:,i); for j=1:N_av_spec r=(i-1)*N_av_spec+j; u1_T(:,r)=p1(((j-1)*(N_tot/N_av_spec)+1):(j*N_tot/N_av_spec)); u2_T(:,r)=p2(((j-1)*(N_tot/N_av_spec)+1):(j*N_tot/N_av_spec));
end; end;
size(u1_T); %CALCOLO DFT
% CALCOLO DELLA MEDIA u_mean=[]; v_mean=[]; for i=1:(N_spettri*N_av_spec) u_mean(i)=sum(u1_T(:,i))/N; v_mean(i)=sum(u2_T(:,i))/N; end;
% DEFINIZIONE DELLE SERIE {X(R)} E{Y(R)} DEPURATE DAL VALORE MEDIO
% I VALORI PER CIASCUN SUBRECORD VENGONO DISPOSTI SECONDO LE RIGHE DELLE % MATRICI X_N E Y_N
for i=1:(N_spettri*N_av_spec)
x_N(:,i)=u1_T(:,i)-u_mean(i)*ones(N,1); % vettore di lunghezza N y_N(:,i)=u2_T(:,i)-v_mean(i)*ones(N,1);
end; size(x_N)
%TAPERING DEI DATI CON HANNING u_Hann=[]; v_Hann=[]; for i=1:(N_spettri*N_av_spec) u_Hann(:,i)=x_N(:,i).*(0.5-0.5*cos((2*pi/T)*t_mat(:,i))); v_Hann(:,i)=y_N(:,i).*(0.5-0.5*cos((2*pi/T)*t_mat(:,i))); end; x_Hann=((8/3)^0.5)*u_Hann; y_Hann=((8/3)^0.5)*v_Hann; size(x_Hann)
% AGGIUNTA DEGLI ZERI x_zero=zeros(L,1); y_zero=zeros(L,1); x_L=[];y_L=[];
for i=1:(N_spettri*N_av_spec)
x_L(:,i)=[x_Hann(:,i);x_zero]; % vettore di lunghezza N+L y_L(:,i)=[y_Hann(:,i);x_zero];
end;
% CALCOLO DFT DELLE SERIE {X(R)} E{Y(R)} DEI SINGOLI SUBRECORD X_DFT=[]; Y_DFT=[];
for i=1:(N_spettri*N_av_spec) X_1=x_L(:,i).';
X_DFT(i,:)=fft(X_1); Y_1=y_L(:,i).'; Y_DFT(i,:)=fft(Y_1); end; size(X_DFT)
%CALCOLO STIME DEGLI SPETTRI
% CALCOLO COEFFICIENTI {S(K)} DEGLI AUTOSPETTRI E CROSS_SPETTRI DEI SINGOLI % SUBRECORD
S_xx_mat=[]; S_xy_mat=[]; S_yx_mat=[]; S_yy_mat=[]; for i=1:(N_spettri*N_av_spec) S_xx_mat(i,:)=conj(X_DFT(i,:)).*X_DFT(i,:); S_xy_mat(i,:)=conj(X_DFT(i,:)).*Y_DFT(i,:); S_yx_mat(i,:)=conj(Y_DFT(i,:)).*X_DFT(i,:); S_yy_mat(i,:)=conj(Y_DFT(i,:)).*Y_DFT(i,:); end;
% CALCOLO DELLO SPETTRO COME MEDIA DEGLI SPETTRI DEI SUBRECORD Sxx_mat=[]; S_xx=[]; Sxy_mat=[]; S_xy=[]; Syx_mat=[]; S_yx=[];
Syy_mat=[]; S_yy=[]; s=0; for i=1:N_spettri s=(i-1)*N_av_spec+1; Sxx_mat=S_xx_mat(s:(s+N_av_spec-1),:); S_xx(i,:)=(dt/(N*N_av_spec))*sum(Sxx_mat); Sxy_mat=S_xy_mat(s:(s+N_av_spec-1),:); S_xy(i,:)=(dt/(N*N_av_spec))*sum(Sxy_mat); Syx_mat=S_yx_mat(s:(s+N_av_spec-1),:); S_yx(i,:)=(dt/(N*N_av_spec))*sum(Syx_mat); Syy_mat=S_yy_mat(s:(s+N_av_spec-1),:); S_yy(i,:)=(dt/(N*N_av_spec))*sum(Syy_mat); end; size(S_yx)
% PER I CROSS-SPETTRI SI CALCOLA IL MODULO E LA FASE S_xy_mod=[]; S_xy_fase=[]; S_yx_mod=[]; S_yx_fase=[]; for i=1:N_spettri S_xy_mod(i,:)=abs(S_xy(i,:)); S_xy_fase(i,:)=angle(S_xy(i,:))*180/pi; % in gradi S_yx_mod(i,:)=abs(S_yx(i,:)); S_yx_fase(i,:)=angle(S_yx(i,:))*180/pi; % in gradi end; size(S_yx_mod) size(S_yx_fase)
% CALCOLO DELLA FUNZIONE DI COERENZA gamma2_xy=[]; gamma2_yx=[];
for i=1:N_spettri gamma2_xy(i,:)=(S_xy_mod(i,:).*S_xy_mod(i,:))./(S_xx(i,:).*S_yy(i,:)); gamma2_yx(i,:)=(S_yx_mod(i,:).*S_yx_mod(i,:))./(S_xx(i,:).*S_yy(i,:)); end; %DATI IN USCITA T dt f_Nyq e_random_norm=1/(N_av_spec^0.5) N L T_L % Filtraggio
for pippo=50:50:499 % Eliminazione frequenze passaggio pale wo = pippo/500; bw = 0.006; [b,a]=iirnotch(wo,bw); for i=1:(N_spettri*N_av_spec) x_L(:,i)=filtfilt(b,a,x_L(:,i)); end; end for i=1:(N_spettri*N_av_spec) X_1=x_L(:,i).'; X_DFT(i,:)=fft(X_1); end; for i=1:(N_spettri*N_av_spec) S_xx_mat(i,:)=conj(X_DFT(i,:)).*X_DFT(i,:); end for i=1:N_spettri s=(i-1)*N_av_spec+1; Sxx_mat=S_xx_mat(s:(s+N_av_spec-1),:); S_xx_f(i,:)=(dt/(N*N_av_spec))*sum(Sxx_mat); end
figure('name','S_x_x filtrata');clf;hold on;grid on; for i=1:N_spettri sig_vett=sigma_spettri(i)*ones(1,((N+L)/2)); plot3(sig_vett,freq_vett(1:(N+L)/2),S_xx_f(i,1:(N+L)/2)); end; xlabel('\sigma'); ylabel('Frequency [Hz]'); zlabel('Amplitude S_x_x [Pa^2 s]');
title ('Waterfall plot \phi=0.035 (Filtered)') %GRAFICI
size(sigma_spettri) size(freq_vett) size(S_xx)
size(S_xx(10,1:(N+L)/2))
figure('name','S_x_x');clf;hold on;grid on; for i=1:N_spettri sig_vett=sigma_spettri(i)*ones(1,((N+L)/2)); plot3(sig_vett,freq_vett(1:(N+L)/2),S_xx(i,1:(N+L)/2)); end; xlabel('\sigma'); ylabel('Frequency [Hz]'); zlabel('Amplitude S_x_x [Pa^2 s]'); title ('Waterfall plot')
figure('name','S_y_y');clf;hold on;grid on; for i=1:N_spettri
sig_vett=sigma_spettri(i)*ones(1,((N+L)/2));
plot3(sig_vett,freq_vett(1:(N+L)/2),S_yy(i,1:(N+L)/2)); end;
xlabel('sigma');ylabel('frequenza (Hz)');zlabel('Ampiezza S_y_y'); title ('S_y_y')
% INSERIMENTO CURVA CAVITANTE IN WP [n_sigmi,n_frequi]=size(S_xx)
figure('Name','Waterfall plot con curva cavitante') hold on grid on; for i=1:n_sigmi sig_vett=sigma_spettri(i)*ones(1,((N+L)/2)); menouni1=(-1)*ones(1,n_sigmi); plot3(sig_vett,freq_vett(1:(N+L)/2),S_xx(i,1:(N+L)/2)); end; xlabel('\sigma','FontSize',12); ylabel('Frequenza [Hz]','FontSize',12);
zlabel('Ampiezza S_x_x [Pa^2 s]','FontSize',12); for i=1:n_sigmi dp2(i)=100000*(mean(dati1_mat(n_spettri*(i-1)+(1:n_spettri),3))); psi2(i)=(dp2(i))./(rho*(omega^2)*(Rt^2)); psi2_per(i)=psi2(i)/psi2(1); end text ('FontSize',12) plot3(sigma_spettri,(psi2_per.^3).*50,menouni1,'LineWidth',3) plot3(sigma_spettri,(psi2_per.^3).*50,menouni1,'o','Markerfacecolor',... 'b','Markersize',2,'Markeredgecolor','k','LineWidth',2) maxi=max(S_xx); maxim=max(maxi); axis ([0 0.4 0 500 -1 maxim])
% GRAFICI PER sigma FISSATO flag=1; while flag==1 per=input('inserisci % sigma') a=length(sigma_spettri); zz=ceil(a*per/100); sigma=sigma_spettri(zz) freque=input('frequenza studiata(Hz)'); a1=freque-10; if a1<0 a1=0 end a2=freque+10; if a2>f_Nyq a2=f_Nyq; end for ss=1:(N+L)/2 if abs((freque-freq_vett(ss)))<((1/T_L)+0.00001*(1/T_L)) frequenza=freque fasee=S_xy_fase(zz,ss) gammaa=gamma2_xy(zz,ss) break end end % GRAFICI SEPARATI figure subplot(3,1,1); plot(freq_vett(1:(N+L)/2),S_xx(zz,1:(N+L)/2)); hold on
line([frequenza frequenza],[0 40000*5000],'color',[0 0 0],'LineWidth',1.5); xlabel('Frequency [Hz]') ylabel('Amplitude S_x_x [Pa^2 s]'); grid on mmm=max(S_xx(zz,1:(N+L)/2)); axis([a1 a2 0 400*5000]) subplot(3,1,2) plot(freq_vett(1:(N+L)/2),S_xy_fase(zz,1:(N+L)/2),'r'); hold on
line([frequenza frequenza],[-200 200],'color',[0 0 0],'LineWidth',1.5); xlabel('Frequency [Hz]') ylabel('Phase angle[deg]') grid on axis([a1 a2 -180 180]) subplot(3,1,3) plot(freq_vett(1:(N+L)/2),gamma2_xy(zz,1:(N+L)/2),'g') hold on
line([frequenza frequenza],[0 1],'color',[0 0 0],'LineWidth',1.5); xlabel('Frequency [Hz]')
ylabel('Coherence_y_x') grid on
axis([a1 a2 0 1])
flag=input('1 per continuare') end
A.5
Creazione dell’onda per la verifica delle interazioni non lineari
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% CREAZIONE DELL'ONDA PER LA VERIFICA % % DELLE INTERAZIONI NON LINEARI % % Piero Miloro 2009 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clc clear all close all
A1=0.9; % Ampiezza onda principale A2=0.4; % Ampiezza onda secondaria w1=200*2*pi; % Frequenza onda principale w2=13*2*pi; % Frequenza onda secondaria x=0.001:0.001:300;
onda1=A1*sin(w1*x); % Creazione onda principale onda2=A2.*sin(w2*x); % Creazione onda secondaria onda3=onda1.*onda2; % Interazione non lineare dt=0.001;
fas=45*pi/180; % Separazione angolare dei trasduttori n1=4; % Numero di lobi onda principale
n2=1; % Numero di lobi onda secondaria
onda5=A1*sin((w1*x)+(n1*fas)); % Creazione onda principale, 2° trasduttore onda6=A2*sin((w2)*x+(n2*fas)); % Creazione onda secondaria, 2° trasduttore onda7=onda5.*onda6; % Interazione non lineare, 2° trasduttore
a=onda1+onda2+onda3; % Onda risultante b=onda5+onda6+onda7; % Onda risultante, 2° trasduttore onda(:,1)=1;
for i=1:300000 onda(i,9)=a(i); onda(i,7)=b(i); end
save('prova_interazione','a','b','onda') figure('name','Onda generata') plot(x,a,'b','LineWidth',1.5) hold on grid on axis([0 0.3 -2 2]) legend('f1+f2+(f1*f2)')