i keep getting this error Error using griddedInterpolant The coordinates of the input points must be finite values; Inf and NaN are not permitted.
10 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
yahya elyan
le 22 Mai 2020
Réponse apportée : Cris LaPierre
le 24 Mai 2020
clc
clear
%%%%%%%%%solving%%%%%%%%%%%
%%%%%%%%%%%%%%Inputs%%%%%%%
N=input('Set Your Desired Speed : ');
R1=input('Set Your Desired R1main : ');
X1=input('Set Your Desired X1main : ');
R2=input('Set Your Desired R2main : ');
X2=input('Set Your Desired X2main : ');
Xm=input('Set Your Desired XMmain : ');
Ploss=input('Set Your Desired Fric. & Wind. losses: ');
Freq=input('Set Your Desired Frequency : ');
Vrated=input('Set Your Desired Rated Voltage : ');
OPtorq=input('Set Your Desired Operating Torque : ');
Pratedx=input('Set Your Desired Rated Power(HP) : ');
Two_P=input('Set Your Desired Number Of Poles : ');
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%Calc%%%%%%%%%
Prated=Pratedx*746;
P=Two_P/2;
Ns=(60*Freq)/P;
W=(2*pi*N)/60;
Ws=(2*pi*Ns)/60;
Z1=complex(R1,X1);
Zm=complex(0,Xm/2);
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%PRINTING_CALC%%%%%%%%%%%
S_int=1-(N/Ns);
Zfx_int=complex(R2/(2*S_int),X2/2);
Zbx_int=complex(R2/(2*(2-S_int)),X2/2);
Zf_int=(Zm*Zfx_int)/(Zm+Zfx_int);
Zb_int=(Zm*Zbx_int)/(Zm+Zbx_int);
Zeq_int=Z1+Zf_int+Zb_int;
I_int=Vrated/Zeq_int;
Isq_int=abs(I_int)^2;
Rf_eq_int=real(Zf_int);
Rb_eq_int=real(Zb_int);
Pg_f_int=Isq_int*Rf_eq_int;
Pg_b_int=Isq_int*Rb_eq_int;
Pg_eq_int=Pg_b_int+Pg_f_int;
Pcu_int=Isq_int*R1;
Pin_int=Pg_eq_int+Pcu_int;
Pd_int=((1-S_int)*Pg_f_int)-((1-S_int)*Pg_b_int);
Pout_int=Pd_int-Ploss;
Total_Ploss_int=Pin_int-Pout_int;
Torque_int=Pg_eq_int/Ws;
PowerFactor_int=Pin_int/(sqrt(Isq_int)*Vrated);
Efficiency_int=(Pout_int/Pin_int)*100;
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%PRINTING%%%%%%%%%%
disp('--------------------------------------------------------------');
disp('--------------------------------------------------------------');
fprintf('Input Current : %1.3f A \n',abs(I_int));
fprintf('Power Loases : %1.3f Watt\n',abs(Total_Ploss_int));
fprintf('Input Power : %1.3f Watt\n',abs(Pin_int));
fprintf('Output Power : %1.3f Watt\n',abs(Pout_int));
fprintf('Power Factor : %1.3f \n',abs(PowerFactor_int));
fprintf('Efficiency : %1.3f \n',abs(Efficiency_int));
fprintf('Torque : %1.3f N.M.\n',abs(Torque_int));
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%PLOTTING_LOOP%%%%%
count=1;
for S=1:-0.0001:-0.125
Zfx(count)=complex(R2/(2*S),X2/2);
Zbx(count)=complex(R2/(2*(2-S)),X2/2);
Zf(count)=(Zm*Zfx(count))/(Zm+Zfx(count));
Zb(count)=(Zm*Zbx(count))/(Zm+Zbx(count));
Zeq(count)=Z1+Zf(count)+Zb(count);
I(count)=Vrated/Zeq(count);
Isq(count)=abs(I(count))^2;
Rf_eq(count)=real(Zf(count));
Rb_eq(count)=real(Zb(count));
Pg_f(count)=Isq(count)*Rf_eq(count);
Pg_b(count)=Isq(count)*Rb_eq(count);
Pg_eq(count)=Pg_b(count)+Pg_f(count);
Pcu(count)=Isq(count)*R1;
Pin(count)=Pg_eq(count)+Pcu(count);
Pd(count)=((1-S)*Pg_f(count))-((1-S)*Pg_b(count));
Pout(count)=Pd(count)-Ploss;
Total_Ploss(count)=Pin(count)-Pout(count);
Torque(count)=Pg_eq(count)/Ws;
PowerFactor(count)=Pin(count)/(sqrt(Isq(count))*Vrated);
Efficiency(count)=(Pout(count)/Pin(count))*100;
counter(count)=S;
linxe(count)=OPtorq;
count=count+1;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%PLOTTING%%%%%%%%%
figure;
plot(counter,Torque);
hold on
plot(counter,linxe);
title('Torque vs Speed');
set ( gca, 'xdir', 'reverse' )
xlabel('Speed'),ylabel('Torque');
grid on
dbstop if naninf
OPtorq_s=interp1(Torque,counter,OPtorq);
OPtorq_Speed=(Ns-(OPtorq_s*Ns));
fprintf('OPtorq Speed : %1.3f A \n',OPtorq_Speed);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%CODE END%%%%%%%%%%%%%%%%%%%%%%%%
inputs sets :
Set Your Desired Speed : 1750
Set Your Desired R1main : 2
Set Your Desired X1main : 2.56
Set Your Desired R2main : 2.8
Set Your Desired X2main : 2.56
Set Your Desired XMmain : 60.5
Set Your Desired Fric. & Wind. losses: 51
Set Your Desired Frequency : 60
Set Your Desired Rated Voltage : 120
Set Your Desired Operating Torque : 0.4
Set Your Desired Rated Power(HP) : 0.25
Set Your Desired Number Of Poles : 4
0 commentaires
Réponse acceptée
Cris LaPierre
le 24 Mai 2020
The issue is caused when Torque=NaN. This happens in point 10001, which corresponds to S=0. This traces back to the formula for Zfx:
Zfx(count)=complex(R2/(2*S),X2/2);
R2/(2*S) is the same as R2/0 or Inf.
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Sensors and Transducers dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!