Está en la página 1de 5

TECNICAS MODERNAS EN AUTOMATICA - ELO 377

Identicacin y control de plantas no lineales, o mediante RNA


Jimmy Alexander Toro
Resumen En el presente trabajo, se desarrollar la idena ticacin de sistemas no lineales y el control de los mismos, o mediante el uso del modelo inverso de la planta, ambos desarrollados usando RNA (Redes Neuronales Articiales). Palabras Claves RNA, modelo inverso, identicacin de o sistemas, sistemas no lineales.

Para obtener dicha informacin, al sistema se le inyecta o ruido blanco, ya que posee una alta densidad espectral, lo que permite excitar todos los modos naturales del sistema. En la gura 1, se puede apreciar el esquema del modelo Simulink, mediante el cul se ha realizado la captura de a datos:

I. Introduccion

L objetivo del presente trabajo es la identicacin de o una planta no lineal y su posterior control, utilizando RNA (Redes Neuronales Articiales) y Matlab. La gran ventaja de realizar la identicacin de una planta medio ante el uso de RNA, ocurre cuando no tenemos acceso al modelo matemtico, ya que podemos realizar la identia cacin, tan slo con datos de entrada y la respuesta del o o sistema a estos impulsos. De esta misma manera podemos hacer un modelo inverso de la planta con RNA, utilizando los mismos datos. La capacidad de poder realizar lo anterior, se sustenta en la capacidad que tienen las RNA, para funcionar como aproximadores matemticos universales. a II. El sistema El modelo matemtico del sistema a identicar y controa lar, ser conocido, y as podremos realizar todo el proceso a mediante simulacin. o El sistema se compone de un actuador y una planta, descritos mediante las siguientes ecuaciones: Actuador: q(t) q(t) + 2q(t) = kVc (t) Planta: p(t)p(t)2 + p(t) = k1 q(t) (2) Se Analiza el sistema en torno a un punto de operacin, o donde 0 < q < 10 con qq = 5, 0 < p < 20 con pq = 10, para el cual k es 2, k1 es 2 y Vcq = 5. Cabe destacar que qq , pq , y Vcq , son los valores de las variables en el punto de equilibrio del sistema. En estas condiciones veremos el comportamiento del sistema mediante simulacin, utilizando Simulink de Matlab. o Se realiza el anlisis en torno a un punto de equilibrio, a para as poder utilizar valores de k y k1 conocidos, los cules son vlidos en estas condiciones. a a III. Captura de datos Para poder entrenar la RNA, necesitamos tener datos de entrenamiento, los cuales, deben tener suciente informacin de manera que se puedan conocer todos los modos o naturales del sistema en cuestin. o (1)

Fig. 1. Captura de datos utilizando ruido blanco

En la gura 1 se aprecia cmo se le inyecta ruido o blanco al sistema (el cul est dentro del recuadro Suba a system). Posteriormente la respuesta del sistema se pasa por un retentor de orden cero, para nalmente enviarse al workspace de Matlab. Los datos directos del ruido blanco se pasan por un retardo y posteriormente se mandan al workspace de Matlab tambin. Tanto la respuesta e del sistema como los datos retrasados del ruido blanco se guardan en un archivo para su uso posterior, y adems se a muestran en un scope, como se aprecia en la gura 2. En el esquema anterior se utiliza un retentor de orden cero y un retardo en los datos de entrada, debido a que el modelo con RNA ser discreto. Los datos de entrada a se retrasan, para que queden bien pareados en el archivo en que se guardan con la respuesta del sistema, lo cual se produce por el uso del retentor.

Fig. 2. Ruido de entrada y respuesta del sistema

El sub-sistema que aparece en la gura 1, est compuesto a

TECNICAS MODERNAS EN AUTOMATICA - ELO 377

por el actuador, seguido de la planta, cuyas implementaciones en Simulink se muestran en las guras 3 y 4.

debe tener la RNA, cmo se debe realizar el entrenamiento o y que tipo de informacin debe ser desplegada al terminar o este.

Fig. 3. Actuador No Lineal

Fig. 4. Planta No Lineal

A. Set de datos Con los datos obtenidos, se prepara el entrenamiento de la RNA. Es necesario tomar en cuenta, al momento de hacer la captura de datos, tener una suciente cantidad de ellos, para que se puedan generar 2 set de datos: estimacin y validacin. o o Con los datos de estimacin, se le ensea a la red neuo n ronal el comportamiento deseado. Al utilizarse slo este set o de datos, es posible entrenar la red, para minimizar el error entre la respuesta real del sistema y la respuesta de la red entrenada. Esto puede generar un problema de sobre entrenamiento, es decir que la red memorice el comportamiento deseado y de esa manera slo responda correctamente a o entradas conocidas. Para evitar el problema descrito anteriormente, se utiliza un set de validacin, el cul no se utiliza para entrenar, o a sino para comprobar el funcionamiento de la red, con el entrenamiento que se le ha otorgado. De esta manera se realiza un proceso iterativo, en el cul se entrena la red y a se comprueba inmediatamente, para ir revisando si la red est sobre entrenada o no. En el caso en que se comprueba a que la red se est sobre-entrenando, el proceso se detiene, a y la red lograda en este punto, es la que se utiliza como la red nal. IV. Entrenamiento de la RNA Para entrenar la RNA, se utliz la herramienta nntraino tool de Matlab, como se muestra en la gura 5. Para esto es necesario programar un scrip, en un archivo con extensin .m, en el cul se especican las caracter o a sticas que

Fig. 5. Entrenamiento de la RNA, usando nntraintool

Se pueden congurar caracter sticas tales como: nmero u de capas, cantidad de neuronas por capa, funciones de activacin para cada neurona, conexin o no de bias a cada o o neurona, tiempo de muestreo y nmero de retardos de enu trada (dado que ser un representacin de tiempo discreto). a o Para el modo de entrenamiento, se debe especicar el nmero de pocas, el error global m u e nimo esperado para la red entrenada, la razn de aprendizaje, el gradiente m o nimo esperado, el algoritmo de entrenamiento y adems se inia

Fig. 6. Grco de error a

TECNICAS MODERNAS EN AUTOMATICA - ELO 377

cializan los pesos de la red neuronal (con nmero aleatorios u por ejemplo). Finalmente se pueden desplegar datos como el grco del a error de entrenamiento en funcin del nmero de pocas o u e (gura 6), variacin del gradiente y la regresin lineal del o o error como se ve en la gura 7.

Fig. 9. Organizacin interna de la capa 2 o

z4 + z3 + z2 + z + 1 z4 + z3 + z2 + z

(3)

Con esto se asegura la representacin de un sistema de o hasta cuarto orden, en el caso de que sea demasiado (que el sistema no tenga tantos modos naturales), la red entrenada debiese anular los modos que estn dems, ajustando los e a pesos correspondientes de la RNA. La organizacin interna o de la RNA se puede ver en la gura 10.

Fig. 7. Regresin lineal del error o

A. Identicacin del sistema con RNA o Como el sistema que se desea representar es no lineal, entonces se ha utilizado una red multi-capa con dos neuronas (una en cada capa) como se aprecia en la gura 5. La primera con una funcin de activacin tangecial-sigmoidal o o y la segunda con una lineal, las cuales se muestran en las guras 8 y 9.
Fig. 10. La imgen de la izquierda, muestra los retardos asociados a a la neurona 1, a la derecha, los asociados a la neurona 2

Con la informacin recolectada en la simulacin con o o ruido blanco (aproximadamente 8000 pares de datos), se realiz un entrenamiento de 4000 pocas (en cada poca o e e se entrena con la mitad de los datos, y con la otra mitad se valida). Se program, para que el entrenamiento se deo tuviese cuando se lograra un error global de 1030 , pero se comprob que el entrenamiento automticamente se deo a ten antes (para evitar el sobre-entrenamiento de la RNA). a Adems se utiliz una razn de aprendizaje de 0.01. Estos a o o datos se pueden apreciar en las guras 5 y 6.

Fig. 8. Organizacin interna de la capa 1 o

La RNA se ha congurado con dos entradas, una para las seales de entrada del sistema y la otra como realin mentacin. En la primera entrada se ha permitido el paso o directo de las seales a la neurona, adems de 4 retardos. n a En la segunda entrada, slo 4 retardos. Esto es para aseo gurar una mejor aproximacin de los modos naturales del o sistema, en una representacin discreta. Esto permitir o a representar un sistema del estilo:

Fig. 11. Comparacin entre el sistema real y la red neuronal articial o

TECNICAS MODERNAS EN AUTOMATICA - ELO 377

Para asegurar la performance de la RNA, se utiliz o el algoritmo de m nimos cuadrados y para realizar la actualizacin de los pesos de la RNA, se utiliz backpropo o agation, usando el algoritmo de Quasi-Newton, lo que tambin aparece en la gura 5. e Para vericar la correcta identicacin del sistema, se o compara el comportamiento de la RNA versus el sistema real, como se aprecia en la gura 11. Ac se aprecia que a como seal de entrada se introduce una sinusoidal. n Luego ambas salidas se despliegan en un scope, junto a la entrada sinusoidal. Al revisar la imagen de la gura 12, la sinusoidal mas pequea es la entrada y las salidas del n sistema y de la RNA, se confunden como una sola seal, n debido a lo similares que son. Lo anterior nos indica, que el sistema ha sido bien identicado y que nuestra RNA aproxima de buena manera el sistema completo.

Para calcular la RNA del modelo inverso, se utiliza el mismo mtodo descrito anteriormente para la identicacin e o del sistema, con la unica salvedad que los datos que se utilizaron en la entrada de la RNA para identicar, esta vez van en la salida y viceversa. Dado la similitud de las simulaciones para encontrar ambas RNA (identicacin e inversa), se mostrarn imgenes o a a slo del resultado nal obtenido al utilizar una seal para o n excitar el modelo inverso y la salida del modelo inverso para excitar el sistema, representado por una RNA, que se ha calculado como se explic en la subseccin anterior. Esto o o se muestra en la gura 14.

Fig. 14. Simulacin usada para evaluar el modelo inverso del sistema, o calculado con RNA

En la gura 15, se puede apreciar el resultado de controlar el sistema con un modelo inverso. Aqu vemos la seal n de excitacin (una sinusoidal), versus la salida del sistema o y se puede apreciar claramente un buen seguimiento a esta referencia, con un bajo margen de error.
Fig. 12. Salida del sistema real versus la red neuronal, frente a una entrada sinusoidal

Si bien lo visto en la gura 12, nos indica una buena identicacin del sistema, esto se comprueba restando las o salidas de los sistemas. Luego, se mide la mxima amplitud a de las salidas y se multiplica por +0.05 y 0.05, con lo cual se puede comprobar que el error entre las respuestas de la RNA y del sistema, es inferior a un 5%. El resultante de este proceso se puede apreciar en la gura 13.
Fig. 15. Resultado del control del sistema mediante un modelo inverso, utilizando RNA

Finalmente nos queda controlar el sistema frente a cualquier referencia, con control estacionario cero. Dado que como se aprecia en la gura 15, an hay error de u seguimiento al usar slo el modelo inverso, ser necesario o a utilizar un controlador adicional. V. Control del sistema
Fig. 13. Error entre el sistema real y la red neuronal articial

B. Clculo de la inversa con RNA a Ahora nos queda, que la red sea capaz de hacer un buen seguimiento de la seal de entrada. Para esto calculamos n un modelo inverso del sistema como controlador, tal que permita calcular el valor de entrada necesario, para que el sistema alcance la referencia deseada.

Para asegurar un error estacionario cero, se agrega un controlador PID, y para esta ultima simulacin se utilizar o a el sistema real. Esto es debido a que es lo que realmente queremos controlar. Para lo anterior, se utiliz el sistema mostrado en la o gura 16. Para poner a prueba el control del sistema, se ven los resultados de someterlo a una referencia escaln. Cabe o destacar que para la sintonizacin del controlador PID, se o utiliz el mtodo de Ziegler-Nichols. o e

TECNICAS MODERNAS EN AUTOMATICA - ELO 377

En la gura 19, se mantiene la perturbacin constante, o pero adems se agrega una perturbacin ruido. Si bien en a o este caso no se consigue error estacionario cero, al menos el error tiene una amplitud menor a un 10% que la amplitud de entrada de la seal de referencia. n

Fig. 16. Control del sistema no-lineal, utilizando su modelo inverso y un controlador PID

En la gura 17, se aprecia como se comporta el sistema frente a una referencia escaln. Aqu vemos un pequeo o n overshoot y error estacionario cero.

Fig. 19. Respuesta del sistema controlado, frente a referencia escaln, o perturbacin contante y perturbacin ruido o o

VI. Conclusiones Se pudo obtener un modelo inverso, gracias al cual en conjunto con un controlador PID, se pudo controlar el sistema con una rpida respuesta y error estacionario cero. a Para lograr lo anterior, fue muy importante identicar el sistema, dado que as se pueden probar los controladores que se van diseando, sin utilizar el sistema real. Para n esto, el uso de RNA nos permite identicar el sistema, con informacin de la entrada del sistema y la respuesta del o mismo, frente a dichas entradas. As con RNA se hace relativamente sencillo identicar , y controlar sistemas no-lineales e inclusive, con un modelo matemtico no conocido, siendo slo necesario informacin a o o del comportamiento del mismo. Referencias
[1] Apuntes asignatura Seminario de Control, Departamento de Electrnica UTFSM, Segundo semestre 2011. o

Fig. 17. Respuesta del sistema controlado, frente a referencia escaln o

En las guras 18 y 19, vemos como se comporta el control del sistema, frente a referencia escaln, pero con perturbao ciones en la seal de entrada del sistema, como se aprecia n en la gura 16. En la gura 18, vemos el control resultante, con una perturbacin constante al nal de la etapa de control. Ac o a se presenta un overshoot mucho mayor que en la gura 17. An as este es menor que un 10% de la seal de referencia u , n y tambin tiene error estacionario cero. e

Fig. 18. Respuesta del sistema controlado, frente a referencia escaln o y perturbacin constante o

También podría gustarte