
VARIABLE ENTRADA - VARIABLE SALIDA
Publicado por Fernando (15 intervenciones) el 24/11/2014 16:33:12
Buenas tardes,
Soy novato en Matlab y estoy intentando hacer una funcion que me permita calcular el deslizamiento (s) de un motor trifasico a traves de iteraciones. La duda me surge, porque resulta que una de las variables de entrada es un valor aproximado q he calculado del deslizamiento, y una de las variables de salida sera ese deslizamiento (s) pero recalculado.
He creado esta funcion pero me da error. ¿Podria alguien echarme una mano?
Lo que he intendado hacer es calcular el valor de (s) antes y despues de aplicar la iteracion, asi con su diferencia puedo calcular el error maximo que quiero.
%Funcion para el calculo del deslizamiento por medio de iteraciones
function [Zt, s] = iteraciones_s(s, T, nsinc, n)
%Introduccion de valores
error = 0.0001; % Convergencia
p = 1; % Numero de pares de polos
R2 = 0.01598; % Resistencia del rotor inducida al estator
L = 0.0022959; % Inductancia del circuito equivalente
VF = 219.4; % Tension de fase
R1 = 0.09773 % Resistencia del estator
s_anterior = 1; % Deslizamiento anterior
s_actual = 0; % Deslizamiento actual
%Algoritmo
while abs (s_anterior - s_actual) > error
s_anterior = s;
if n >= 3000
Zt = sqrt ((3*R2*60*(VF)^2)/((s*T*3*pi*n)/(1-s)));
s = R2/(sqrt(((Zt)^2)-((2*pi*L*p*nsinc/60)^2))-1);
else
Zt = sqrt ((3*R2*60*(((n*p)/(1-s))/60*r)^2)/((s*T*3*pi*n)/(1-s)));
s = R2/(sqrt(((Zt)^2)-((2*pi*L*p*nsinc/60)^2))-R1);
end
s_actual = s;
end
end
Soy novato en Matlab y estoy intentando hacer una funcion que me permita calcular el deslizamiento (s) de un motor trifasico a traves de iteraciones. La duda me surge, porque resulta que una de las variables de entrada es un valor aproximado q he calculado del deslizamiento, y una de las variables de salida sera ese deslizamiento (s) pero recalculado.
He creado esta funcion pero me da error. ¿Podria alguien echarme una mano?
Lo que he intendado hacer es calcular el valor de (s) antes y despues de aplicar la iteracion, asi con su diferencia puedo calcular el error maximo que quiero.
%Funcion para el calculo del deslizamiento por medio de iteraciones
function [Zt, s] = iteraciones_s(s, T, nsinc, n)
%Introduccion de valores
error = 0.0001; % Convergencia
p = 1; % Numero de pares de polos
R2 = 0.01598; % Resistencia del rotor inducida al estator
L = 0.0022959; % Inductancia del circuito equivalente
VF = 219.4; % Tension de fase
R1 = 0.09773 % Resistencia del estator
s_anterior = 1; % Deslizamiento anterior
s_actual = 0; % Deslizamiento actual
%Algoritmo
while abs (s_anterior - s_actual) > error
s_anterior = s;
if n >= 3000
Zt = sqrt ((3*R2*60*(VF)^2)/((s*T*3*pi*n)/(1-s)));
s = R2/(sqrt(((Zt)^2)-((2*pi*L*p*nsinc/60)^2))-1);
else
Zt = sqrt ((3*R2*60*(((n*p)/(1-s))/60*r)^2)/((s*T*3*pi*n)/(1-s)));
s = R2/(sqrt(((Zt)^2)-((2*pi*L*p*nsinc/60)^2))-R1);
end
s_actual = s;
end
end
Valora esta pregunta


0