Académique Documents
Professionnel Documents
Culture Documents
Aplicando una señal aleatoria (Amplitud: 3, Frecuencia: 1Hz) a la Función de Transferencia de primer
orden, obtenga una Red Neuronal entrenada para la identificación del sistema.
Utilice el siguiente código para realizar el entrenamiento de la Red. Modifique la cantidad de neuronas
en la capa oculta hasta obtener el mejor resultado posible de entrenamiento.
% Generar datos
% Se realiza la adquisición de los datos con un tiempo de muestreo de 0.1s
% Se utiliza la entrada y salida retrasada para entrenar la red
% tm=0.1seg en el Transport Delay
red = newff([-2 2;-2 2;-1 1],[co cs],{'tansig','purelin','trainlm'})
% co: neuronas capa oculta, cs: neuronas capa salida
% Vector entradas
p=[u';u1';y1'];
% Ajuste parametros de la red
red.trainParam.show = 50;
red.trainParam.goal = 0.0000001;
red.trainParam.epochs =500;
% Entrenamiento de la red
red = train(red,p,y');
% Simular salida de la red entrenada
yred = sim(red,p);
% Graficar salida de la red vs salida deseada
figure(1)
subplot(211)
plot(yred), grid on
title('Salida red')
subplot(212)
plot(y','red'), grid on
title('Salida deseada')
% Generar el bloque con el modelo entrenado
gensim(red);
Use las gráficas para comparar las señales de salida deseada respecto a la salida de la Red entrenada.
Salida deseada
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
0 20 40 60 80 100 120
Salida Red
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
0 20 40 60 80 100 120
𝟎. 𝟎𝟏𝟏
𝑮𝒑(𝒔) =
𝒔+𝟏
𝟐
𝑮𝒑(𝒔) =
𝒔𝟐 + 𝟎. 𝟐𝒔 + 𝟎. 𝟒
𝟏𝟎
𝑮𝒑(𝒔) =
𝟓𝒔𝟒 + 𝟑𝟑. 𝟓𝒔𝟑 + 𝟕𝟏. 𝟓𝟓𝒔𝟐 + 𝟓𝟎. 𝟓𝒔 + 𝟕. 𝟓
Implemente controladores neuronales para cada una de las tres plantas identificadas (utilice el tutorial
del TOOLBOX como guía).