Académique Documents
Professionnel Documents
Culture Documents
Aplicacin
de
1.151 s +0.1774
s + 0.739 s2 +0.921
3
K s+A
s + B s 2 +C
3
function [costo]=Estimacion(x)
%Se declaran las variables globales
global K A B C
%Se asignan los valores a las variables globales
K=x(1);
A=x(2);
B=x(3);
C=x(4);
%Se generan variables de tipo string con el objetivo de facilitar
%la concatenacin de las variables num y den
abre='[';
cierra=']';
uno=num2str(1);
%Se define un vector tiempo para que acompae a la variable EntradaR
%en el bloque From Workspace
time=(0:0.1:100)';
Salida1 = evalin('base', 'Salida');%toma el dato del valor Salida
Entrada1 = evalin('base', 'Entrada');%toma el dato del valor Entrada
%Se enva la variable EntradaR=[time Entrada1] a el Workspace
assignin('base', 'EntradaR', [time Entrada1]);
%Se pasan todas las variables a String
k = num2str(K);
a = num2str(A);
b = num2str(B);
c = num2str(C);
%Se concatena el numerador para poder ser enviado al simulink
n1=strcat(abre,k);
n2=strcat(a,cierra);
num=sprintf('%s %s', n1, n2);
%Se concatena el denominador para poder ser enviado al simulink
d1=strcat(abre,uno);
d2=sprintf('%s %s', d1, b);
d3=strcat(c,cierra);
den=sprintf('%s %s', d2, d3);
%Se enva el numerador al documento parcial_simulink_part_1 con ruta
%al bloque de Transfer Fcn al parmetro Numerator
set_param('parcial_simulink_part_1/Transfer Fcn','Numerator',num);
%Se enva el denominador al documento parcial_simulink_part_1 con ruta
%al bloque de Transfer Fcn al parmetro Denominator
set_param('parcial_simulink_part_1/Transfer Fcn','Denominator',den);
%Se corre el documento de simulink parcial_simulink_part_1
[t,x,y]=sim('parcial_simulink_part_1.mdl');
%Se recibe el dato que llega de la simulacion
Salidasim=y(5:1005,2);
%Se envia la variable Salidasim=Salidasim al Workspace
assignin('base', 'Salidasim', Salidasim);
%Se calcula la funcin costo
[costo]=mean(((Salida1-Salidasim).^2));
end
Prueba:
1. Lo primero que se hizo fue abrir todos los documentos
(parcial_simulink_part_1, simulaciondatos, optimtool).
2. Despus se procedi a correr el documento de SIMULINK llamado
simulaciondatos ya que este corresponde a la funcin de transferencia
real de la velocidad de cabeceo del aircraft, es decir, con este documento
se generan la Entrada y Salida reales.
3. Despus se procedi a abrir el optimtool y se ingresaron los datos:
Bounds:
Lower: [0,0,0,0]
Upper: [1.5,1.5,1.5,1.5]
Initial range:
[0,0,0,0;1.5,1.5,1.5,1.5]
Population size:
5
Finalmente se procedi a presionar el botn de start. Obteniendo los
siguientes resultados:
En la Imagen No.2 podemos ver los valores que la funcin costo calcul, presenta
4 individuos donde el individuo 1 equivale a la variable K, el individuo 2 equivale a
la variable A, el individuo 3 equivale a la variable B y el individuo 4 equivale a la
variable C.