15
TRABAJO PREVIO. UNIDADES TECNOLÓGICAS DE SANTANDER CONTROL NEURONAL M.Sc. Hernando González Acevedo 1. Presentar una breve descripción de los algoritmos de entrenamiento que emplea la toolbox Neural Network de Matlab para redes MPL. 2. Investigue los diferentes métodos que presenta la toolbox Neural Network de Matlab para seleccionar los datos de entrenamiento, validación y test. 3. Realizar un resumen de las funciones de Matlab utilizadas para determinar modelos no lineales. Dar un ejemplo de cada una, estableciendo las expresiones que representan el modelo dinámico. PROCEDIMIENTO 4. Seleccione dos motores de corriente continua de baja potencia y acople los ejes; el objetivo es energizar uno de los motores y sensar la tensión generada por el segundo motor. Diseñar un filtro pasabajos pasivo de primer orden para eliminar el ruido en la tensión generada. Nota. Si los datos registrados por la unidad de procesamiento digital presentan niveles de ruido alto, diseñe e implemente un filtro digital. Frecuencia de muestreo 1/0.017=58,82hz Frecuencia de corte 1Hz Función de transferencia del filtro Gf (z) Ecuación de diferencia 0.003636*xn1+0.003636*xn2+1. 876*yn1-0.883*yn2 5. Registre en un archivo de Excel el comportamiento de la respuesta transitoria de la tensión del dínamo para diferentes valores de la acción de control. Incluya entre los datos el mínimo y máximo valor de la acción de control. Identifique este archivo como dat_identificacion. Periodo de muestreo 0.017 seg

sugeno pid narx

Embed Size (px)

DESCRIPTION

contiene el desarrollo en arduino de los controladores

Citation preview

Page 1: sugeno pid narx

TRABAJO PREVIO.

UNIDADES TECNOLÓGICAS DE SANTANDERCONTROL NEURONAL

M.Sc. Hernando González Acevedo

1. Presentar una breve descripción de los algoritmos de entrenamiento que emplea la toolbox Neural Network de Matlab para redes MPL.

2. Investigue los diferentes métodos que presenta la toolbox Neural Network de Matlab para seleccionar los datos de entrenamiento, validación y test.

3. Realizar un resumen de las funciones de Matlab utilizadas para determinar modelos no lineales. Dar un ejemplo de cada una, estableciendo las expresiones que representan el modelo dinámico.

PROCEDIMIENTO

4. Seleccione dos motores de corriente continua de baja potencia y acople los ejes; el objetivo es energizar uno de los motores y sensar la tensión generada por el segundo motor. Diseñar un filtro pasabajos pasivo de primer orden para eliminar el ruido en la tensión generada.

Nota. Si los datos registrados por la unidad de procesamiento digital presentan niveles de ruido alto, diseñe e implemente un filtro digital.

Frecuencia de muestreo 1/0.017=58,82hzFrecuencia de corte 1HzFunción de transferencia del filtro Gf (z)Ecuación de diferencia 0.003636*xn1+0.003636*xn2+1.876*yn1-

0.883*yn2

5. Registre en un archivo de Excel el comportamiento de la respuesta transitoria de la tensión del dínamo para diferentes valores de la acción de control. Incluya entre los datos el mínimo y máximo valor de la acción de control. Identifique este archivo como dat_identificacion.

Periodo de muestreo

0.017 seg

Page 2: sugeno pid narx

Señal de PWM

Tensión del dínamo

6. Registre otro conjunto de datos relacionados con el comportamiento dinámico del sistema y denomine este archivo como dat_test.

Periodo de muestreo

0.017 seg

Page 3: sugeno pid narx

Señal de PWM

Tensión del dínamo

7. A partir de la toolbox ident de Matlab identifique un modelo lineal del sistema.

Función de transferencia G(s)

0.05325/(0.01823*s^2 + 0.27*s + 1)

Page 4: sugeno pid narx

Función de transferencia G(z )

8. A partir de la funciónnarxnet de la toolbox Neural Network de Matlab, entrene una red neuronal de forma que caracterice la respuesta transitoria del sistema (arquitectura serie paralelo), para lo cual utilice el archivo dat_identificacion. Configure una función de activación tipo sigmoidalpara la capa oculta.

Parámetros de configuración logsigEntradas a la red neuronal u[n-k] y y[n-k] d1 = [0:1]

d2 = [1:2]Número de neuronas de la capa oculta 5 (trainlm)Número de iteraciones 3000(62)Error medio cuadrático 1e-5Mínimo valor del gradiente de la función de optimización 1e-10Valor inicial de la taza de aprendizaje 0.01Factor de decrecimiento de la taza de aprendizaje 0.5Factor de crecimiento de la taza de aprendizaje 10Máximo valor de la taza de aprendizaje 1e10Máximo número de control de validación 20Método para seleccionar los datos de entrenamiento y validación dividerandPorcentaje del número de datos de entrenamiento 70%Porcentaje del número de datos de validación 30%Resultados de la etapa de entrenamientoError medio cuadrático - Datos de entrenamiento 8.0143e-04Error medio cuadrático - Datos de validación 0.0045Respuesta transitoria (Datos experimentales – Modelo estimado)

9. Realice un test del modelo NARX con los datos del archivo dat_test.

Page 5: sugeno pid narx

Respuesta transitoria (Datos experimentales – Modelo estimado)

error =8.0143e-04

Error medio cuadrático (Datos de test)

error =0.0025

Page 6: sugeno pid narx

Nota. Si error medio cuadrático de la etapa de testno es cercano al error medio cuadrático definido para la etapa de entrenamiento, repita el numeral siete.

10.Retroalimente la salida de la red neuronal utilizando la función closeloop de la toolbox Neural Network de Matlab, como indica la figura 2.Determine las condiciones iniciales de cada uno de los estados del modelo NARX de forma que ante una entrada cero de la acción de control el modelo indique tensión cero.

NOTA:lo minimo que se acerco a cero de todas las simulaciones prestableciendo los valores de los delays ante entrada cero.

Fig.1 Modelo NARX

11.A partir de la funciónnarxnet de la toolbox Neural Network de Matlab, entrene una red neuronal de forma que caracterice la respuesta transitoria del sistema (arquitectura paralelo), para lo cual utilice el archivo dat_identificacion. Configure una función de activación tipo tangente hiperbólica para la capa oculta.

Parámetros de configuraciónEntradas a la red neuronal u[n-k] y y[n-k] d1 =[0:0];

d2 =[1:1];Número de neuronas de la capa oculta 1Número de iteraciones 3000(3000)Error medio cuadrático 1e-3Mínimo valor del gradiente de la función de optimización 1e-10Valor inicial de la taza de aprendizaje 0.01Factor de decrecimiento de la taza de aprendizaje 0.1Factor de crecimiento de la taza de aprendizaje 10Máximo valor de la taza de aprendizaje 1e10Máximo número de control de validación 20Método para seleccionar los datos de entrenamiento y validación ‘dividerand’Porcentaje del número de datos de entrenamiento 0.8Porcentaje del número de datos de validación 0.2

Resultados de la etapa de entrenamientoError medio cuadrático - Datos de entrenamiento Error=0.0022Error medio cuadrático - Datos de validación Error=0.0021Respuesta transitoria (Datos experimentales – Modelo estimado)

Page 7: sugeno pid narx

12.Realice un test del modelo NARX con los datos del archivo dat_test.

Respuesta transitoria (Datos experimentales – Modelo estimado)

Error medio cuadrático (Datos de test)

Error=0.0021

Page 8: sugeno pid narx

Nota. Si error medio cuadrático de la etapa de testno es cercano al error medio cuadrático definido para la etapa de entrenamiento, repita el numeral once.

13.Determine las condiciones iniciales de cada uno de los estados del modelo NARX de forma que ante una entrada cero de la acción de control el modelo indique tensión cero.

NOTA:lo minimo que se acerco a cero de todas las simulaciones prestableciendo los valores de los delays ante entrada cero.

14.Compare la respuesta transitoria del modelo lineal y de los dos modelos no lineales, ante diferentes valores de la señal de referencia. De acuerdo a los resultados, determine el mejor modelo que se adapta a la dinámica del sistema.

PARALELO:

Page 9: sugeno pid narx

SERIE-PARALELO:

PID:

Page 10: sugeno pid narx

15.Diseñe un controlador neuronal para regular la tensión del dínamo.

Criterios de diseñoSobrepaso 10%Tiempo de establecimiento 4segFunción de transferencia

Red neuronalRetardos de la señal de referencia

Retardos de la acción de control

Retardos de la variable del proceso

Número de neuronas de la capa oculta

Número de iteraciones

Error medio cuadrático

Mínimo valor del gradiente de la función de optimización

Valor inicial de la taza de aprendizaje

Factor de decrecimiento de la taza de aprendizaje

Factor de crecimiento de la taza de aprendizaje

Máximo valor de la taza de aprendizaje

Máximo número de control de validación

Método para seleccionar los datos de entrenamiento y validación

Porcentaje del número de datos de entrenamiento

Porcentaje del número de datos de validación

Datos de entrenamiento

Número de iteraciones

Arquitectura de la red neuronal

Resultados de la etapa de entrenamientoError medio cuadrático - Datos de entrenamiento

Error medio cuadrático - Datos de validación

Respuesta transitoria (Datos experimentales – Modelo estimado)

16.Implemente en un sistema de procesamiento digital el controlador neuronal. Evalúe la respuesta transitoria de la variable del proceso y la acción de control para diferentes niveles de la señal de referencia.

Setpoint – Variable del proceso

Acción de control

17.Implemente el siguiente diagrama de bloques; fije como señal de referencia la utilizada en el numeral anterior y compare la respuesta obtenida en la simulación con los datos experimentales. . La dinámica de la planta la representa un modelo NARX.

Variable del procesoRespuesta transitoria (Experimental - Simulación)Error medio cuadrático mse ( y− y )

Acción de control Respuesta transitoria (Experimental - Simulación)

Page 11: sugeno pid narx

Error medio cuadrático mse (u−u)

Fig.2Control neuronal& Modelo NARX

18.Diseñe un controlador PI o PID, para lo cual ubique los ceros y polos del regulador de forma que se pueda cumplir con las condiciones de diseño: sobrepaso y tiempo de establecimiento.

Criterios de diseñoSobrepaso

Tiempo de establecimiento

Función de transferencia del controlador

Gc (z )=K1 z

2−K2 z+K3z (z−1)

Función de transferencia del controlador

Gc (z )=K p+K I

1−z−1+K D(1−z

−1)

Contantes antiwindup K A

Respuesta transitoria V outAcción de control

19.Implemente en un sistema de procesamiento digital el controlador PI o PID. Evalúe la respuesta transitoria de la variable del proceso y la acción de control para diferentes niveles de la señal de referencia.

Setpoint – Variable del proceso

Acción de control

20.Implemente el siguiente diagrama de bloques; fije como señal de referencia la utilizada en el numeral anterior y compare la respuesta obtenida en la simulación con los datos experimentales. La dinámica de la planta la representa un modelo NARX.

Variable del procesoRespuesta transitoria (Experimental - Simulación)Error medio cuadrático mse ( y− y )

Acción de controlRespuesta transitoria (Experimental - Simulación)Error medio cuadrático mse (u−u)

Page 12: sugeno pid narx

Fig.3Control PID & Modelo NARX

21.Diseñe un controlador Fuzzy Sugeno, definiendo como señales de entrada el error y la razón de cambio del error, como señal de salida la razón de cambio de la acción de control.

Conjuntos Difusos – Variable Error

Conjuntos Difusos – Variable Razón de cambio del Error

Funciones de membresía – Variable Razón de cambio de la acción de control

Base de reglas

Superficie de control

Constantes K1 y K2.

22.Implemente en un sistema de procesamiento digital el controlador fuzzy sugeno. Evalúe la respuesta transitoria de la variable del proceso y la acción de control para diferentes niveles de la señal de referencia.

Setpoint – Variable del proceso

Acción de control

23.Implemente el siguiente diagrama de bloques; fije como señal de referencia la utilizada en el numeral anterior y compare la respuesta obtenida en la simulación con los datos experimentales. . La dinámica de la planta la representa un modelo NARX.

Variable del procesoRespuesta transitoria (Experimental - Simulación)Error medio cuadrático mse ( y− y )

Acción de controlRespuesta transitoria (Experimental - Simulación)Error medio cuadrático mse (u−u)

Page 13: sugeno pid narx

Fig.4Control Fuzzy & Modelo NARX

24.Conclusiones