Documente Academic
Documente Profesional
Documente Cultură
DESAROLLO DE UN SOFTWARE EN LA
PLATAFORMA MATLAB PARA EL
CALCUO DE V3 EN UN SISTEMA DE 4
NODOS POR EL METODO DE
GAUSS-SEIDEL.
UNIDAD No: 2
PRESENTA:
DOCENTE:
OBJETIVO ESPESIFICO
OBJETIVO GENERAL
Aplicación del programa MATLAB para determinar los voltajes en una red eléctrica y el
flujo de potencia en líneas de transmisión ante cualquier condición de demanda de energía.
MARCO TEORICO
En el presente trabajo se desarrolla el análisis del SEP haciendo uso de una herramienta
computacional, en esta se realiza el diseño del software para obtener la solución de V en
la red analizada. Este software fue diseñado para un uso didáctico en el que el usuario
sea capaz de involucrarse con el funcionamiento de un SEP, encargándose de suministrar
los datos necesarios para el tipo de sistema que elija analizar y así llevarlo a la solución
del mismo de una forma gráfica amigable y entendible.
El software fue desarrollado con la ayuda del entorno de trabajo Matlab ® para vincular la
lógica del programa con una vista gráfica, en cuestión de una mejor comprensión para el
usuario.
Métodos de Solución
Donde 𝑦�� mostrado en letras minúsculas es la admitancia real en por unidad. 𝑃�𝑠𝑐ℎ y
𝑄�𝑠𝑐ℎ son las potencias reales y reactivas reales expresadas en por unidad.
ITSZN
Unidad acadéé mica dé ingéniéríéa Eléctromécaé nica. Paé gina 2
CALCUO DE V3 EN UN SISTEMA DE 4 BARRAS POR EL METODO
DE GAUSS-SEIDEL EN MATLAB.
2019
MATERIAL Y EQUIPO
- Computadora PC
- Software MATLAB.
ITSZN
Unidad acadéé mica dé ingéniéríéa Eléctromécaé nica. Paé gina 3
CALCUO DE V3 EN UN SISTEMA DE 4 BARRAS POR EL METODO
DE GAUSS-SEIDEL EN MATLAB.
2019
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
%*************************************************************************
% ---
function Ybarra_OpeningFcn(hObject, eventdata, handles, varargin)
OutputFcn.
% hObject
% eventdata
% handles )
% varargin
handles.output = hObject;
guidata(hObject, handles);
%*************************************************************************
% --- command line.
function varargout = Ybarra_OutputFcn(hObject, eventdata, handles)
% varargout args (see VARARGOUT);
% hObject
% handles data (see GUIDATA)
%
varargout{1} = handles.output;
helpdlg('Escriba en la tabla los valores de las admitancias de cada rama','ASP2');
%*************************************************************************
% --- function PushB_Close_Callback(hObject, eventdata, handles)
% hObject handle to (see GCBO)
% eventdata
close
clear
%*************************************************************************
% --- function PushB_Regresar_Callback(hObject, eventdata, handles)
Obtener_elementos(hObject, eventdata, handles)
%*************************************************************************
% --- PushB_Calcular.
function PushB_Calcular_Callback(hObject, eventdata, handles)
% hObject handle to PushB_Calcular (see GCBO)
% eventdata reserved -
h=get(handles.Table_Data,'Data');
Yadm3=handles.admitan;
for m=1:1:length(h)
Yadm3(m).Valor=h(m,1);
end
ITSZN
Unidad acadéé mica dé ingéniéríéa Eléctromécaé nica. Paé gina 4
CALCUO DE V3 EN UN SISTEMA DE 4 BARRAS POR EL METODO
DE GAUSS-SEIDEL EN MATLAB.
2019
Num_nodos=handles.Num_nodos;
Num_ramas=handles.Num_ramas;
Ybar=zeros(Num_nodos);
Yadm={};
for m=1:1:Num_nodos
Yadm(m)={m};
for n=1:1:Num_nodos
if m==n
for k=1:1:length([Yadm3(:).Valor])
if m==Yadm3(k).Sub1 || m==Yadm3(k).Sub2
Ybar(m,n)=Ybar(m,n)+Yadm3(k).Valor;
end
end
else
for k=1:1:length([Yadm3(:).Valor])
if
eval([num2str(m),num2str(n)])==eval([num2str(Yadm3(k).Sub1),num2str(Yadm3(k).Sub2)]) ||
eval([num2str(n),num2str(m)])==eval([num2str(Yadm3(k).Sub1),num2str(Yadm3(k).Sub2)])
Ybar(m,n)=Ybar(m,n)-Yadm3(k).Valor;
end
end
end
end
end
Yadm2=cell(1,Num_nodos);
Yadm2(:)={150};
set(handles.Table_Data,'ColumnName',Yadm,'RowName',Yadm,'Data',Ybar,...
'ColumnWidth',Yadm2);
fprintf('\n');
Ybar
handles.output = hObject;
guidata(hObject, handles);
%*************************************************************************
% --- Table_Data.
function Table_Data_CellEditCallback(hObject, eventdata, handles)
% hObject handle to Table_Data (see GCBO)
% eventdata structure with the following fields (see UITABLE)
% Indices: row and column indices of the cell(s) edited
% PreviousData: previous data for the cell(s) edited
% EditData: string(s) entered by the user
% NewData: EditData or its converted form set on the Data property. Empty if Data was not
changed
% Error: error string when failed to convert EditData to appropriate value for Data
% handles structure with handles and user data (see GUIDATA)
h=get(handles.Table_Data,'Data');
[Row_dim,Col_dim]=size(h);
Yadm=cell(1,Col_dim);
Yadm(:)={150};
set(handles.Table_Data,'ColumnWidth',Yadm(:));
handles.output = hObject;
guidata(hObject, handles);
%*************************************************************************
% --- Obtiene los datos para iniciar la aplicación.
function Obtener_elementos(hObject, eventdata, handles)
Num_nodos=inputdlg('Digite el número de nodos: ','ASP2');
Num_nodos=str2num(Num_nodos{1});
Num_ramas=factorial(Num_nodos)/(factorial(2)*factorial(Num_nodos-2));
Num_ramas=Num_nodos+Num_ramas;
Ybarra=zeros(Num_nodos);
Yadm2={};
for m=1:1:Num_nodos
Yadm2{m}=['y',num2str(m),num2str(0)];
Yadm3(m)=struct('Name',['y',num2str(m),num2str(0)],'Sub1',m,'Sub2',0,'Valor',0);
end
n2=Num_ramas-Num_nodos;
n=n2;
ITSZN
Unidad acadéé mica dé ingéniéríéa Eléctromécaé nica. Paé gina 5
CALCUO DE V3 EN UN SISTEMA DE 4 BARRAS POR EL METODO
DE GAUSS-SEIDEL EN MATLAB.
2019
k=1;
while n~=0
for m=1:1:Num_nodos
if k>=m
else
Yadm2{n2-n+Num_nodos+1}=['y',num2str(k),num2str(m)];
Yadm3(n2-n+Num_nodos+1)=struct('Name',
['y',num2str(k),num2str(m)],'Sub1',k,'Sub2',m,'Valor',0);
n=n-1;
end
end
k=k+1;
end
set(handles.Table_Data,'Enable','on','ColumnName',{'Y'},'RowName',Yadm2,...
'Data',zeros(Num_ramas,1),'ColumnWidth',{'auto'});
handles.admitan=Yadm3;
handles.Num_nodos=Num_nodos;
handles.Num_ramas=Num_ramas;
handles.output = hObject;
guidata(hObject, handles);
RESULTADOS
ITSZN
Unidad acadéé mica dé ingéniéríéa Eléctromécaé nica. Paé gina 6
CALCUO DE V3 EN UN SISTEMA DE 4 BARRAS POR EL METODO
DE GAUSS-SEIDEL EN MATLAB.
2019
Figura 6: Resultados
ITSZN
Unidad acadéé mica dé ingéniéríéa Eléctromécaé nica. Paé gina 7
CALCUO DE V3 EN UN SISTEMA DE 4 BARRAS POR EL METODO
DE GAUSS-SEIDEL EN MATLAB.
2019
CONCLUSIONES
Con el diseño de este software fue posible obtener una mejor comprensión del método
empleado Gauss-Seidel para la solución de los problemas de Sistemas Eléctricos de
Potencia y que el alumno será capaz de resolver.
BIBLIOGRAFIA
[1]https://www.google.com/search?client=avast&ei=-
HuSXOnyGMi1tgWi8L7ICQ&q&gs_l=psy-ab.3...15.1192..1450...0.0..0.0.0.......0....1..gws-
wiz.nzPXxjWk22A
[2] https://www.youtube.com
ITSZN
Unidad acadéé mica dé ingéniéríéa Eléctromécaé nica. Paé gina 8