18042751 neuro controlador motor dc

10
Diseño e Implementación de un Sistema Neurocontrolador para un Servomotor DC José Huamán Gurmendi. e Ysmael Ysidro S. Estudiantes de último semestre. Universidad Nacional de Ingeniería. Lima-Perú Resumen.- El presente proyecto trata sobre el diseño e implementación de un neurocontrolador que realizará el control de posición y velocidad del servomotor DC que tiene incorporado un encoder óptico incremental para sensar la posición angular del eje del servomotor. El modelo de un servomotor DC es conocido, debido a esto sus parámetros deben ser previamente identificados. Las metas impuestas en este proyecto son: diseñar, simular e implementar en tiempo real un sistema de control basado en una ley neuronal. El sistema será implementado usando la tarjeta de adquisición de datos de National Instruments DAQ USB-6008 que interactúa con el servomotor DC y a su vez con el programa LabVIEW, el mismo que nos proporcionará los resultados provenientes de la simulación indicando la respuesta de los algoritmos basados en redes neuronales. Abstract.- This project focuses on the design and implementation of a neurocontrolador to perform position and speed control of DC servo motor that has a built-optical incremental encoder to sense the angular position of the axis of the servomotor. The model of a DC servomotor is known, because its parameters that must be identified. The targets are imposed on this project: to design, simulate and implement a real-time control system based on a neuronal law. The system will be implemented using the data acquisition board from National Instruments USB-6008 DAQ interacts with DC servo motor and in turn with the LabVIEW program, which will give us the results from the simulation showing the response of the algorithms based in neural networks. 1. INTRODUCCIÓN a RNA, también conocido como red con aprendizaje conexionista y procesamiento de distribución paralela, está encontrando aplicaciones en diversas áreas: muchas ramas de ingeniería, ciencias de la salud, ciencias cognoscitivas, la arqueología, las finanzas, etc. En estos campos, hay dos categorías de problemas que se han resuelto con éxito usando la metodología de la RNA. Ellos son el reconocimiento de patrones provenientes de diferentes datos, la identificación de parámetros de sistemas y el control (conocido/desconocido) de sistemas dinámicos. Hasta la fecha existe un creciente interés en los sistemas de control que incluyen redes neuronales artificiales como elementos de control, por lo que se han implementado un importante número de soluciones. Las aplicaciones exitosas más relevantes incluyen desde elementos que operan como identificadores hasta aquellos que trabajan como controladores de optimización utilizando modelos del proceso. Hoy en día la inteligencia artificial está siendo usada en la industria, por ejemplo la tecnología Siemens incorpora a sus PLC la lógica difusa. En control de calidad, para la identificación de materiales defectuosos. Identificar fisuras en piezas mecánicas mediante fotografía. En la facultad de Ingeniería Mecánica de la UNI así como en diferentes facultades del mundo, investigadores han realizado notables aplicaciones de Identificación Facial e Identificación de Voz usando algoritmos neuronales con excelentes resultados. El estudio de los neurocontroladores ha sido utilizado en sistemas de control, debido a que una red neuronal tiene la capacidad de aproximar cualquier función no lineal, como lo demuestra el teorema de Funahashi. Entonces, se puede entrenar a una red neuronal para que se comporte como un controlador no lineal. Es así que nacen los Neurocontroladores, que es la aproximación de un controlador no lineal, por lo que su análisis es muy similar a cuando tenemos sistemas de control no lineales. Lo importante del diseño de un neurocontrolador es que podemos usarlos para diversas áreas de la Mecatrónica, entre ellas en la robótica, en la automatización. Los neurocontroladores no están ajenos a esta innovación tecnológica, actualmente se están haciendo pruebas de neurocontroladores para ser incorporados a la industria como solución a problemas más complejos que requieran de la optimización. 2. PLANTEAMIENTO DEL PROBLEMA El problema que se estudia en este proyecto es el control de la posición angular y velocidad angular del servomotor DC, este problema de control es resuelto por medio del diseño de un neurocontrolador. Para esto se requiere que el servomotor DC realice: el seguimiento de trayectorias de referencia arbitrarias empleando la fuerza de control adecuada. Por consiguiente, el proceso a controlar posee una entrada y una salida, es decir, es un proceso SISO (Single-Input-Single- Output). L

Upload: joel-ontiveros

Post on 05-Dec-2014

55 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 18042751 Neuro Controlador Motor DC

Diseño e Implementación de un Sistema Neurocontrolador para un Servomotor DC José Huamán Gurmendi. e Ysmael Ysidro S. Estudiantes de último semestre. Universidad Nacional de

Ingeniería. Lima-Perú

Resumen.- El presente proyecto trata sobre el

diseño e implementación de un neurocontrolador que

realizará el control de posición y velocidad del

servomotor DC que tiene incorporado un encoder

óptico incremental para sensar la posición angular del

eje del servomotor.

El modelo de un servomotor DC es conocido,

debido a esto sus parámetros deben ser previamente

identificados.

Las metas impuestas en este proyecto son:

diseñar, simular e implementar en tiempo real un

sistema de control basado en una ley neuronal. El

sistema será implementado usando la tarjeta de

adquisición de datos de National Instruments DAQ

USB-6008 que interactúa con el servomotor DC y a su

vez con el programa LabVIEW, el mismo que nos

proporcionará los resultados provenientes de la

simulación indicando la respuesta de los algoritmos

basados en redes neuronales.

Abstract.- This project focuses on the design and

implementation of a neurocontrolador to perform

position and speed control of DC servo motor that has

a built-optical incremental encoder to sense the

angular position of the axis of the servomotor.

The model of a DC servomotor is known, because its

parameters that must be identified.

The targets are imposed on this project: to design,

simulate and implement a real-time control system

based on a neuronal law. The system will be

implemented using the data acquisition board from

National Instruments USB-6008 DAQ interacts with

DC servo motor and in turn with the LabVIEW

program, which will give us the results from the

simulation showing the response of the algorithms

based in neural networks.

1. INTRODUCCIÓN

a RNA, también conocido como red con aprendizaje conexionista y procesamiento de distribución paralela, está encontrando

aplicaciones en diversas áreas: muchas ramas de ingeniería, ciencias de la salud, ciencias cognoscitivas, la arqueología, las finanzas, etc. En estos campos, hay dos categorías de problemas que se han resuelto con éxito usando la metodología de la RNA. Ellos son el reconocimiento de patrones provenientes de diferentes datos, la identificación de parámetros de sistemas y el control (conocido/desconocido) de sistemas dinámicos. Hasta la fecha existe un creciente interés en los sistemas de control que incluyen redes neuronales artificiales como elementos de control, por lo que se han implementado un importante número de

soluciones. Las aplicaciones exitosas más relevantes incluyen desde elementos que operan como identificadores hasta aquellos que trabajan como controladores de optimización utilizando modelos del proceso.

Hoy en día la inteligencia artificial está siendo usada en la industria, por ejemplo la tecnología Siemens incorpora a sus PLC la lógica difusa. En control de calidad, para la identificación de materiales defectuosos. Identificar fisuras en piezas mecánicas mediante fotografía. En la facultad de Ingeniería Mecánica de la UNI así como en diferentes facultades del mundo, investigadores han realizado notables aplicaciones de Identificación Facial e Identificación de Voz usando algoritmos neuronales con excelentes resultados.

El estudio de los neurocontroladores ha sido utilizado en sistemas de control, debido a que una red neuronal tiene la capacidad de aproximar cualquier función no lineal, como lo demuestra el teorema de Funahashi. Entonces, se puede entrenar a una red neuronal para que se comporte como un controlador no lineal. Es así que nacen los Neurocontroladores, que es la aproximación de un controlador no lineal, por lo que su análisis es muy similar a cuando tenemos sistemas de control no lineales.

Lo importante del diseño de un neurocontrolador es que podemos usarlos para diversas áreas de la Mecatrónica, entre ellas en la robótica, en la automatización. Los neurocontroladores no están ajenos a esta innovación tecnológica, actualmente se están haciendo pruebas de neurocontroladores para ser incorporados a la industria como solución a problemas más complejos que requieran de la optimización.

2. PLANTEAMIENTO DEL PROBLEMA El problema que se estudia en este proyecto es

el control de la posición angular y velocidad angular del servomotor DC, este problema de control es resuelto por medio del diseño de un neurocontrolador. Para esto se requiere que el servomotor DC realice: el seguimiento de trayectorias de referencia arbitrarias empleando la fuerza de control adecuada. Por consiguiente, el proceso a controlar posee una entrada y una salida, es decir, es un proceso SISO (Single-Input-Single-Output).

L

Page 2: 18042751 Neuro Controlador Motor DC

Es necesario modelar la dinámica del sistema servomotor DC mediante las ecuaciones de energía de Lagrange. En algunos casos la exactitud del modelo puede ser fundamental para aplicarle una técnica de control. Siendo el modelo del sistema conocido se procederá a identificar la planta y expresarla por una función de transferencia en S.

3. JUSTIFICACIÓN

En este proyecto se escoge la técnica del

control basado en redes neuronales, por ser una candidata natural para resolver el problema del control de la posición y velocidad del servomotor DC. La técnica usada por el neurocontrolador se basa en la estructura del poderoso algoritmo computacional Backpropagation, que resolverá el problema del control resultando así la mejor solución a nuestro problema de control, más aún cuando el modelo matemático es difícil de construir.

3.1. OBJETIVOS GENERALES

1. Implementar un sistema de control para la velocidad y posición de un servomotor DC basado en un neurocontrolador, usando la NIDAQ USB-6008 y un algoritmo de redes neuronales.

2. Construir un módulo de entrenamiento y control de motores DC usando para esto algoritmos neuronales.

4. FORMULACIÓN DE LA HIPÓTESIS

El entrenamiento de la red neuronal le permitirá al neurocontrolador comportarse tal cual un controlador previamente diseñado para alcanzar ciertas condiciones o parámetros esperados del sistema a controlar. El diseño y construcción de la electrónica permitirán implementar el sistema de control y observar su desarrollo en tiempo real.

5. FUNDAMENTO TEÓRICO 5.1. MODELAMIENTO DEL MOTOR

La función de transferencia de un servomotor

DC con excitación independiente es un sistema de tercer orden cuando la salida es la posición, definida por la función de transferencia ���� ����� � ����� ����� �� � �

Donde � es el momento de inercia, � es el coeficiente de amortiguamiento, �� es la constante del torque de motor (que muchas veces coincide con la constante contra electromotriz ��), � es la resistencia de la armadura, � es la inductancia de

armadura, �� es el voltaje de armadura y � es la salida (posición del eje del motor).

Para este proyecto el motor que se utilizará no dispone de una hoja técnica de la cual extraer los parámetros de la planta, por lo que el sistema será identificado experimentalmente, procedimiento que se justificará más adelante.

5.2. TÉCNICA DE IDENTIFICACIÓN DE LA FUNCIÓN DE TRANSFERENCIA

La eficiencia del Sistema va ligado a los

parámetros de la planta, debido a que nuestro sistema es retroalimentado, es necesario diseñar un buen neurocontrolador, por ende identificar bien nuestro sistema, para ello utilizaremos el IDENT del Matlab, el cual va a mimetizar el sistema Motor, un sistema de orden 2 con polos negativos, sin ceros, y con una ganancia positiva, como el que se muestra a continuación

�� � ���� ����� �� �! � � "#$%&'()( *%+%, � � "%$+)-# (# #.,)()

Obtenido el Modelo Matemático del Motor podemos diseñar el Neurocontrolador, para esto es necesario conocer el valor de parámetros J, K, b, R, L del sistema los cuales desconocemos.

La Solución propuesta para la obtención de parámetros del sistema, consiste en obtener los datos de velocidad con el decodificador de cuadrantes por medio del encoder, generar una señal de entrada de voltaje que actuaría como generador. Esto se realizaría con el fin de obtener por medio de la tarjeta de adquisición de datos (DAQ) y LabVIEW, dos señales que serían el voltaje aplicado al motor uno y el voltaje generado por el decodificador y por medio del TOOLBOX del Matlab IDENT relacionar estas dos señales para obtener un modelo aproximado al del motor.

5.3. EL NEUROCONTROLADOR

Una red neuronal es un elemento no lineal

dentro de la estructura de control, por lo que la técnica de análisis estará basada en el análisis por función descriptiva la que tenemos que aplicar al neurocontrolador. Esto tiene como ventaja el hecho de que permite analizar sistemas aún con fuertes no linealidades presentes, la desventaja es su naturaleza aproximada que nos puede llevar a errores.

El principio del neurocontrolador se basa en la premisa de que toda red neuronal puede aproximar una función no lineal (Teorema de Funahashi).

Page 3: 18042751 Neuro Controlador Motor DC

Figura 3. Representación gráfica del teorema de

Funahashi.

Aunque el teorema garantiza la existencia de una red neuronal capaz de aproximar una función pero no indica la arquitectura de esta, ni tampoco garantiza que la red aprenderá la función. Por lo que será necesario realizar experiencias seleccionando una arquitectura apropiada para la red, así como un criterio de aprendizaje de la ley de control.

Se propone la estructura del Perceptron Multicapa con una capa oculta como la mostrada en la figura 4. Las funciones de activación en este caso serán elegidas tomando en consideración que deben ser derivables pues así lo exige el Algoritmo de entrenamiento Backpropagation.

/�.#+0� � tanh�.#+0� Donde .#+0 es una suma ponderada de la

entrada a la red por los pesos sinópticos de la capa de entrada que ahora pasan por la neurona " ' " de la capa oculta.

.#+0 � �0670

Figura 4. Arquitectura de la red neuronal

El objetivo es que la red neuronal aprenda la función no lineal y pueda reproducir su comportamiento para cualquier entrada. Los pesos y bías iniciales serán aleatorios. El algoritmo de aprendizaje será el Backpropagation, que es un algoritmo poderoso de entrenamiento supervisado,

basado en la regla de actualización de los pesos de las capas por la expresión (11.15) � 8 � � 9�:;� Esta regla se encargará de minimizar el error cuadrático medio entre la salida de la red y la salida deseada, hasta alcanzar un estado en el que por más datos que se envíen a la red el error irá disminuyendo muy lenta e imperceptiblemente. La estrategia de entrenamiento supervisado seguirá la dinámica mostrada en la figura 5, donde el Supervisor es un controlador previamente diseñado al que se desea aproximar. Notamos que la salida de la red no es digital, por lo que se tomará en la capa de salida como función de activación una función de la forma (11.13) o lineal. Una vez alcanzado el objetivo del entrenamiento, el controlador será reemplazado por la red neuronal entrenada y este será el neurocontrolador conectado en cascada con la planta que controle el lazo de la figura 6.

Figura 5. Estrategia de Entrenamiento Supervisado

5.3.1. FUNCIÓN DESCRIPTIVA DEL

NEUROCONTROLADOR

Si aplicamos una entrada senoidal a un elemento no lineal su salida generalmente no es senoidal pero si periódica, con el mismo periodo que la entrada. En el análisis de la Función Descriptiva se supone que sólo la primera armónica de la salida es significativa (esto se debe a que la mayoría de sistemas de control son filtro pasa-bajos). La Función Descriptiva de un elemento no lineal está definida como la relación compleja entre la componente armónica fundamental de la salida respecto a la entrada, cuando se aplica una entrada senoidal. Es decir:

< � =8> ?�8 Donde: < � Función descriptiva. > � Amplitud de la senoidal de entrada. =8 � Amplitud de la primera armónica de la

salida.

Page 4: 18042751 Neuro Controlador Motor DC

�8 � Desplazamiento de fase de la primera armónica de la salida.

Como mencionamos anteriormente, podemos considerar en el control una red neuronal multicapa, que se puede aproximar a un elemento no lineal. La ley de control está dada por:

@ � AB tanh�7#�CD8

Donde B y 7 son los pesos de la red neuronal

y < el número de neuronas ocultas. Lo anterior es válido para una arquitectura que presenta una función de activación Púrelin en la capa de salida.

Utilizando la serie de Taylor para desarrollar la función +)./, tenemos:

tanh�E� � E : EF3 2EI15 : 17EM315 N

Si |E| P Q 2⁄ , es una función impar. Si

tomamos sólo dos términos de la serie, es decir para E � 7#, podemos reemplazar en la ecuación:

tanh�7#� � 7# : �7#�F3

Esta aproximación es válida para �7#�! PQ! 4⁄ . Luego, la ecuación puede expresarse como:

@ � ABCD8 T7�# : �7�#�33 U

Para obtener la función descriptiva de la red

neuronal, el error # se reemplaza por ) sin��+� y usando identidades trigonométricas:

@ �A)BCD8

7 X1 : �7)�!6 �7)�! cos�2�+�2 \ sin��+� Donde la amplitud de la primera armónica es:

=8 � A)B7CD8 T1 : �7�)�26 U

La amplitud de la senoidal de entrada es:

> � )

Y el desfase, siempre que �7#�! P Q! 4⁄ . Ya que esta condición hace a la función impar:

�8 � 0

Finalmente, reemplazando las ecuaciones anteriores, la Función Descriptiva para el Neurocontrolador es la siguiente:

< � ^�)� � A7BCD8 _1 : 7!)!6 `

Donde �7#�! P Q! 4⁄ es el máximo valor para

el argumento de cada función de activación.

5.3.2. CICLOS LÍMITES DEL NEUROCONTROLADOR

Para hallar los ciclos límites del

neurocontrolador tenemos que resolver la ecuación: a�-��^�)� 1 � 0 Despejando tenemos: a�-�� � :1^�)� Reemplazando la Función descriptiva

encontrada en el apartado anterior, continuamos con las operaciones:

a�-�� � :1∑ 7�B� c1 : 7�2)26 d

Suponiendo que: a�-�� � :|a�-��| Luego

reemplazando y despejando ) de la ecuación:

)! � 6e∑7B : 1|a�-��|f∑ 7FB

Entonces, para que haya ciclo límite se tiene

que cumplir la siguiente condición:

A7BCD8

g 1|a�-��| La amplitud ) del ciclo límite se puede

predecir con este método cuando:

0 P 6 e∑7B : 1|a�-��|f∑ 7FB P Q!47� Donde 7� � *áEi7!j.

5.4. ESTRUCTURA DE CONTROL

Esta sección presenta algunos aspectos importantes para el diseño de un neurocontrolador. Aunque existen otros caminos para clasificarlos esta sección adopta una estructura similar a la teoría

Page 5: 18042751 Neuro Controlador Motor DC

de control adaptivo. Son tres familias de arquitecturas para la aplicación de las RNA’s en sistemas de modelado y control.

A. Arquitecturas para el modelado de

sistemas En primer lugar tenemos las arquitecturas de

modelado de sistemas, donde se utiliza una red neuronal para imitar el comportamiento de un elemento físico real. Generalmente se realizan usando la estrategia de entrenamiento supervisado, aunque también las técnicas de control adaptivo son aplicadas con el fin de no depender de las salidas de la planta.

B. Neurocontroladores Indirectos. En el esquema de neurocontroladores

indirectos, la red neuronal no envía señales de control directamente al proceso. En lugar de esto, la red indica algunas características dinámicas de relevancia en el proceso. Este indicador puede ser un modelo que se comporta de forma similar al proceso ó bien un parametrizador que ajusta a un controlador produciendo configuraciones apropiadas basadas en el comportamiento de dicho proceso.

· Controlador neuronal basado en modelo completo.

· Controlador neuronal basado en modelo paramétrico ó parcial.

· Modelo inverso neuronal. · Parametrizador de controladores basado en

Redes Neuronales Artificiales. C. Neurocontroladores Directos. En el esquema de un neurocontrol directo, una

red neuronal es empleada como un controlador de retroalimentación que envía señales directamente al proceso. Dependiendo del concepto del diseño, los elementos del neurocontrolador directo se categorizan principalmente atendiendo su dependencia al modelo del sistema.

· Modelado del controlador. · Neurocontrolador libre de modelo. · Neurocontrolador basado en modelo. · Neurocontrol robusto.

Entre las estructuras de control propuestas

como aplicación de un sistema neurocontrolador tenemos: Estructuras de Control Adaptivo, Estructuras de Control Óptimo y Estructuras de Control con Modelo de referencia. Partiremos de la Estructura de Control Óptimo, al que agregamos el neurocontrolador en cascada con la planta.

Figura 6. Esquema de Control Óptimo

La ventaja de esta estructura frente a otras es que nos enfoca directamente con la respuesta del neurocontrolador, nos permitirá validar su aprendizaje. Por otro lado exige una inversión menor comparado a otras estructuras, siendo en nuestro caso suficiente para los objetivos del presente proyecto. 6. CARACTERÍSTICAS DEL SERVOMOTOR DC

La planta se trata de un motor DC que tiene

incorporado un encoder óptico incremental. En la tabla 6 que se presenta a continuación, enumeramos las características que se han podido determinar del motor.

Nº Característica Dato o Valor

1 Marca HITACHI DC MOTOR

2 Serie AX060092

3 Tensión Nominal 24V

4 Potencia Salida 19 W

5 Velocidad Nominal

6 Corriente Vacío

7 Corriente Nominal 0.792 A

8 Encoder 100 PPR

Tabla 6. Especificaciones técnicas del Motor DC.

La respuesta que el encoder nos da se comporta

de la siguiente manera como se muestra en la siguiente tabla.

El encoder fue probado, la frecuencia que entrega el encoder a 12V es de 3.7 KHz

La tensión DC de alimentación es aquella con la que se alimentó al motor. La frecuencia del encoder fue medido usando un Osciloscopio TECKTRONIC.

7. DISEÑO DEL MÓDULO DE CONTROL 7.1. PUENTE AMPLIFICADOR DE POTENCIA

El circuito puente de amplificación de potencia

permite la alimentación al Motor DC con una fuente de tensión de 12 V. Se utiliza el L298 para esta función.

Page 6: 18042751 Neuro Controlador Motor DC

7.2. CIRCUITO GENERADOR DE PWM El circuito generador de PWM está basado en

un Micro Controlador PIC 16F877A. Usando un cristal de 4KHz para trabajar con una frecuencia de adquisición y de generación de PWM de aproximadamente 1KHz.

La NIDAQ-USB mediante una de sus salidas analógicas brindará el nivel de Dutty-Cycler al que el PIC generará el PWM. Siendo que la salida de la DAQ está limitada a sólo 5V, y el puente H permite alimentar al motor con 12 V, planteamos que:

Salida DAQ Dutty Valor

Medio

0V 0% 0V 5V 100% 12V

Sin embargo la DAQ no es capaz de brindar a

su salida voltajes de valores muy pequeños como 0.001V, por esta razón el 0% es precisamente cuando la señal de la DAQ sea cero o muy cercano al ese valor, como inferior a 0.07 V.

7.3. CIRCUITO ACONDICIONADOR DE

SEÑAL

Para poder sensar la señal del encoder y medir la velocidad del eje del motor se implementa un circuito acondicionador de señal, detector de flancos basados en el LM2907.

7.4. TARJETA NI-DAQ USB 6008 La tarjeta NI-DAQ USB 6008 ofrece la

posibilidad de comunicarse con la PC y usando el Software de LabVIEW. No necesita fuente externa ya que su comunicación vía USB con la PC le brinda la alimentación.

Presenta las siguientes características generales.

Característica Valor

Modos de Operación Diferencial / RSE Frecuencia de Muestreo 10 K muestras/segundo Resolución 12 bits Entradas Analógica 8 Canales Salidas Analógicas 2 Salidas Entradas Digitales 12 Canales Salidas Digitales 12 Salidas Contadores de 32 bits 1

Tabla. Características generales de la NI-DAQ USB 6008.

La tarjeta de Adquisición de Datos permitirá realizar las mediciones de las señales de estado de la planta. La salida del Acondicionador será conectada en Modo RSE a una entrada analógica de la DAQ y observada en el Front Panel de LabVIEW.

Las entradas analógicas de la DAQ, tienen un rango de valores de niveles de voltaje que no está garantizado su correcta adquisición. Según el fabricante se habla del rango de -1V a1V. Siendo este rango el menos recomendable para trabajar en el control. Sin embargo hay la posibilidad de amplificar la señal antes del muestreo.

Las salidas Analógicas de la tarjeta soportan un nivel de 0-5V. La señal de control que será calculada por el Algoritmo Neuronal será escalada de manera proporcional a este rango, de manera que 5V a la salida de la DAQ signifique para el Circuito generador de PWM el 100% del ancho de pulso.

8. CÁLCULOS DE IDENTIFICACIÓN Y DISEÑO

8.1. IDENTIFICACIÓN DE LA PLANTA

Para la adquisición de los voltajes de

excitación y generado, se uso el criterio de estabilidad de Nyquist, una frecuencia de muestreo de 1000 Hz debido a que el sistema trabaja con bajas frecuencias. También se definió un tiempo de adquisición de 2s Suficiente para aproximar el comportamiento del sistema.

Durante el tiempo de adquisición voltaje de entrada o de excitación del motor se vario de 0 a 12V todo esto con el puente H debido a que los datos adquiridos presentaban una alteración de por ruido con una frecuencia aproximada de 30Hz, se implemento un filtro Butter pasa bajos de orden 1, y frecuencia de corte de 60 Hz con el fin de eliminar este ruido y así poder apreciar las señales originales.

Se procede a adquirir datos usando la tarjeta NI-DAQ USB 6008. Los datos son mostrados en la figura para una respuesta a un escalón de amplitud 5V. Se observa que debido al Decodificador de Cuadratura se está infiltrando un excesivo ruido en los datos.

Figura 12. Respuesta natural del motor DC.

Para solucionar el percance del ruido vamos a

proceder a filtrar los datos previamente antes de aplicar el algoritmo de identificación. Para esto se

Page 7: 18042751 Neuro Controlador Motor DC

diseña un Filtro Pasa Alto tipo Butterworth de primer orden. Con lo que obtenemos como resultado una data menos ruidosa y más apropiada para la identificación, la que se muestra en la figura 13.

Figura 13. Datos después del tratamiento de aplicar el filtro pasa alto.

Luego de aplicar el procedimiento de identificación según el algoritmo descrito en el fundamento teórico, tenemos la función de trasferencia expresado por: a��� � 1244.9711�� 65.97��� 18.88�

Con lo anterior podemos comprar la respuesta de la función de transferencia identificada y los datos de entrada y salida del proceso de adquisición. Este resultado se muestra a continuación en la figura 14.

Figura 14. Comparación de los datos de la respuesta de la planta identificada.

En este punto aclararemos que en los gráficos

se observa que la señal de entrada en un escalón de un poco más de 4 voltios. En realidad la planta

estaba siendo excitada con 12v DC, pero la referencia de 4 voltios hace alusión a la salida de la NI-DAQ USB 6008 que al ser 4 voltios, está comunicando al circuito generador PWM que brinde al motor un PWM con un alto ancho de pulso, como se explicó en la descripción del módulo PWM.

En conclusión, la salida y entrada a la DAQ era lo único posible de observar directamente, convirtiéndose el módulo: motor, acondicionador, puente H y generador PWM en nuestro sistema, por lo que el modelo es un esfuerzo por modelar toda la planta pasando por alto las no linealidades e inconvenientes de la calibración de los acondicionadores.

8.2. DISEÑO DEL NEUROCONTROLADOR

Una vez que tenemos la planta identificada, podemos proceder a simular el sistema colocando la no linealidad en cascada con la planta y anotar las características del saturador que haga que el sistema se estabilice, no presente sobre picos altos y sea lo más rápido posible.

Procedemos a resolver la siguiente ecuación: a�-��^�)� 1 � 0 Ya que tenemos identificado que: a��� � ���� )��� �� Evaluando: a��� � �-��-� )��-� ��

a�-�� � :- ��:�! )�����! )!���! �!�: ���! )!���! �!� Con lo que para cumplir la ecuación inicial se

debe cumplir: ^�)� :���! )!���! �!� � :1 ��:�! )�����! )!���! �!� � 0 Entonces se tiene que: �! � 1 �787!�⁄

resultando que el valor es � � 35.2877 ,)(/�#o. Reemplazando en la primera ecuación ahora se tendrá ^�)� � 84.8638

Page 8: 18042751 Neuro Controlador Motor DC

Siendo esta la función descriptiva del neurocontrolador.

Vamos a elegir la no linealidad de Saturación para ser aproximada, porque mejores prestaciones tiene en las simulaciones que se han realizado con la planta identificada.

La función descriptiva del saturador está dado por:

<�p� � 2�Q qsinr8 s)pt )pu1 : )!p!v Seleccionamos un nivel del saturador con w � 1 y un � � 1.0009 con lo que ) � x �0.999

el valor de límite horizontal del saturador. Igualamos: ^�)� � <�p� De donde debemos despejar el valor de p que

es la amplitud de la señal de entrada que servirá de referencia para el entrenamiento. Resolviendo:

p � 1.4831

Con todo lo anterior tenemos definido las señal de entrada y salidas deseadas para el entrenamiento del neurocontrolador siendo:

> � p sin��+�

=8 � 2�Q qsinr8 s)pt )pu1 : )2p2v p sin��+�

8.3. ENTRENAMIENTO DE LA RED NEURONAL

Para el entrenamiento se hace uso del Toolbox

de Matlab, se Normalizo la señal de entrada y salida para un mejor seguimiento, se eligió un red neuronal TRN Back Propagation, se creó mediante la función newff dicha reden el Matlab, nuestra red neuronal cuenta con 3 capas ocultas, una capa de entrada y una de salida, en la capa oculta se uso la función de activación tansig y en la capa de salida se uso la función de activación pureline, definimos pesos iniciales aleatorios, el numero de épocas del entrenamiento es de 100 épocas y se observo dicho entrenamiento cada 10 épocas, el valor de alpha de 0.01.

Simulamos la red creada con la entrada del sistema y observamos que esta le sigue a la salida la cual habíamos entrenado

Figura. Verificación del entrenamiento de la red

8.4. RESULTADOS DE SIMULACIONES

Figura. Esquema de Simulación para comparar la respuesta del Neurocontrolador y la No Linealidad.

Figura. Comparación de la salida del Neurocontrolador y la No Linealidad, para una referencia de 2 unidades.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

-1.5

-1

-0.5

0

0.5

1

1.5

Curva de motorCurva de motorCurva de motorCurva de motor

Tiempo [seg.]Tiempo [seg.]Tiempo [seg.]Tiempo [seg.]

u [

Sa

lid

a d

e l

a R

ed

Ne

uro

na

l]u

[S

ali

da

de

la

Re

d N

eu

ron

al]

u [

Sa

lid

a d

e l

a R

ed

Ne

uro

na

l]u

[S

ali

da

de

la

Re

d N

eu

ron

al]

entrenada

Salida

Entrada

Page 9: 18042751 Neuro Controlador Motor DC

8.5. IMPLEMENTACIONES

Existen 4 etapas bien definidas en el módulo que se fabricará para implementar el algoritmo del neurocontrolador. La primera consiste en el mismo motor, donde se lleva a cabo la dinámica. La salida será sensada: cuando es velocidad, la señal del encoder óptico será acondicionada a un valor de tensión proporcional a la frecuencia, el nivel será adquirido por una DAQ6008 por una de sus entradas analógicas y comparada con la señal de referencia que puede ser interna o externa (Ver figura 6).

Figura. Sistema de Control final (Ver Anexos)

Esta comparación dará como resultado el error, que pasará a la segunda etapa que es la ejecución del algoritmo de control, es decir el error pasará por la red neuronal que calculará el valor de la señal de control.

Un microprocesador ejecutará un algoritmo para generar la señal de control analógica usando la técnica de PWM. La tercera etapa es la generación del PWM que finalmente funcionará con la etapa de potencia y hará llegar el valor proporcional a la señal de control hacia el motor.

8.6. CONCLUSIONES Y RECOMENDACIONES 1. Hay que cuidar la elección de la estructura de la

Red Neuronal. Un número mayor que 3 neuronas en la capa oculta puede llevar a minimizar el error de aproximación pero a la vez puede ocasionar que el neurocontrolador memorice la ley de control y no responda adecuadamente cuando enviamos referencias fuera del rango de entrenamiento. Se recomienda supervisar el criterio de parada del entrenamiento no sacrificando la memorización en un afán de seguir disminuyendo el error.

2. De lo anterior se deduce que existe una desventaja al usar la estrategia del neurocontrolador partiendo de un entrenamiento supervisado, por el hecho que se tiene que conocer de antemano la ley de control y/o un controlador previamente diseñado que trabaje como supervisor. Por lo que debemos seleccionar una estrategia de control previa par que supervise el entrenamiento.

3. Se toma la recomendación de ver al sistema, motor, circuito de potencia y sensor óptico, como planta. Esto puede ocasionar que la técnica de identificación descrita no modele los demás componentes de la planta, puesto que se estarán agregando no linealidades, se espera que el neurocontrolador amortigüe las no linealidades introducidas, siendo este su ventaja frente a controladores clásicos.

4. Se demostró que el sistema es estable debido a que el sistema no presenta ciclo límite ni para la no linealidad signo ni para la no linealidad.

5. Se concluye que es posible obtener diferentes tipos de respuesta variando los valores de la función descriptiva.

6. Se comprobó que disminuyendo el valor del factor de aprendizaje la red aprende con mayor velocidad.

7. Para nuestro primer análisis usamos la función de activación LOGSIG y obtuvimos como resultado una respuesta no tan cercana a la función no lineal, por lo tanto usamos una función de activación TANSIG, ya que esta presenta valores negativos y positivos que aproxima mejor a la función no lineal, ya sea una función saturación o relay.

8. Se concluye que es posible aproximar de una manera casi exacta, a través de un neurocontrolador una función no lineal en un sistema de lazo cerrado.

9. Una función no lineal se utiliza para rangos de salidas muy alto es un proceso de lazo cerrado, de aquí se determina la necesidad de usar funciones no lineales para los procesos.

10. El número de neuronas a utilizar se basó en pruebas de ensayo y error, se comprobó que un mayor número de neuronas no asegura una buena performance del proceso.

11. La arquitectura 1-3-1 brinda suficientes posibilidades para que la red neuronal aprenda la función no lineal.

12. Es posible que el neurocontrolador pueda aproximar el comportamiento de un controlador de otra naturaleza, esto nos puede servir para validar los algoritmos de entrenamiento.

13. El control es lento. Siendo que es sólo una simulación, notamos un tiempo de asentamiento muy alto, esto es por la naturaleza del saturador que está siendo usado como controlador pues sólo garantiza que el sistema se estabiliza pero no podemos variar los parámetros de respuesta del sistema directamente por diseño. Estos parámetros se pueden manejar en el análisis en frecuencia y variando los patrones de entrenamiento de la red neuronal.

14. Podemos correr el riesgo de que la neurona no aprenda la función si es que forzamos a que sea más rápida. Por eso tendremos en cuenta la posibilidad de aproximar otros controladores.

Page 10: 18042751 Neuro Controlador Motor DC

8.7. REFERENCIAS

[1] Neural Networks. Algorithms, Applications and

Programming Techniques. James A. Freeman, David M. Skapura.

[2] Foundations of Neural Networks, Fuzzy Systems and Knowledge Engineering. Nikola K. Kasabov. Massachusetts Institute of Technology. 1996.

[3] An Introducction to Neuronal Networks. Ben J. A. Kröse, P. Pratrick Van der Smagt. 1993.

[4] Toolbox de Identificación de Matlab. http://www.mathworks.com/products/sysid/