RESUMEN
Este artículo compara el desempeño de tres arquitecturas microcontroladas en la implementación de un controlador difuso, las cuales corresponden a un PIC18f2550, un MSP430G2452 y un DSPIC30F4011. Con el objetivo de establecer cuál de ellas ofrece una ventaja o desventaja en térmi- nos de la memoria utilizada, tanto de pro- grama como de datos, tiempo de respuesta y potencia consumida. Permitiendo de esta forma establecer las características de cada una de ellas y criterios claros para la selec- ción de alguna, en una aplicación de control embebida y en general cualquier aplicación que exija del dispositivo capacidad de alma- cenamiento y velocidad de procesamiento.
Palabras claves: comparación de arquitec- turas, controlador difuso, memoria de pro- grama, microcontrolador.
ABSTRACT
This paper compares the performance of three micro-controlled architectures in the implementation of a fuzzy control- ler, these correspond to a PIC18F2550, a MSP430G2452 and DSPIC30F4011. In order to establish which of them offers an advantage or disadvantage in terms of memory used for both program and data, response time and power consumption. Thus allowing setting the characteristics of each and criteria for selecting one in an embedded control application and in gen- eral any application that requires the device storage capacity and processing speed.
Keywords: comparison of architectures, fuzzy controller, microcontroller, program memory.
(ProQuest: ... denotes formulae omitted.)
1. INTRODUCCIÓN
Hoy día, en la implementación de diversas aplicaciones referentes a controladores digitales, es posible conseguir desarrollos de una gran variedad de fabricantes. Entre estos se encuentran las arquitecturas mi- crocontroladas, con las cuales es posible solucionar los requerimientos de la elec- trónica digital. A nivel de ingeniería, muchas investigaciones utilizan microcontroladores para implementar la parte de control, es así como en [1] se diseña un sistema de con- trol de acceso por medio de un microcon- trolador de la familia ATMega16. En [2] se diseña un sistema educativo para enseñan- za de microcontroladores en función a un microcontrolador Freescale MC9S12C32. En [3] se presenta el diseño de un contro- lador discreto PID con microcontrolador, sin especificar la referencia o familia utilizada. En [4] se emplea un microcontrolador ARM Cotex-M3 para el diseño e implementa- ción de una unidad terminal remota o RTU, en un sistema de automatización. En [5] se presenta el diseño de una lengua elec- trónica por medio de un microcontrolador PIC18F4550, utilizando algoritmos de inte- ligencia artificial, en este caso lógica difusa y redes neuronales.
Con respecto a esta última aplicación entre los esquemas de control hoy día, cobran fuerza los implementados mediante sis- temas difusos, ya que permiten establecer el diseño del controlador, para el control de una planta lineal o no, mediante una serie de reglas que describen el comportamiento del mismo. En [6] se presenta un sistema de control de nivel basado en lógica difusa y aplicado a un arreglo de tres tanques, uti- lizando a la vez técnicas de procesamiento de imagen. En [7] se presenta el desarro- llo de un controlador PID clásico mejorado, mediante la acción en paralelo de un con- trolador difuso. En [8] se presenta el diseño de un controlador difuso para el control de nivel de un tanque en un sistema de calde- ra. En [9] se desarrollan algoritmos de infe- rencia difusa para un controlador de tráfico vehicular.
En los diferentes trabajos relacionados, se encuentra que los sistemas difusos son implementados o en un equipo de compu- to o en un dispositivo microcontrolado. No se presenta una relación frente a las carac- terísticas de hardware requeridas, solo en [10] se encontró una comparación básica de algunas arquitecturas de microcontrola- dores, a fin de desarrollar un sensor de red inalámbrico bajo el agua. Los demás casos mencionados abordan la implementación de la electrónica digital por medio de una referencia específica de microcontrolador, sin ahondar en por qué o el cómo fue es escogida dicha referencia. Debido a esto, en el presente artículo se desarrolla un con- trolador difuso implementado en diferen- tes arquitecturas de hardware, como son: un microcontrolador MSP430G2452 de Texas Instruments (TI), un microcontrolador 18f2550 de Microchip y un dsPIC30f4012 de la misma marca, a fin de poder comparar el desempeño de cada uno de ellos, las ven- tajas y desventajas que ofrecen, entorno a una aplicación de control de nivel mediante un sistema difuso.
Dichas referencias obedecen a las encon- tradas en varios artículos del estado del arte y a su vez a la intención de comparar no solo dos arquitecturas de diferente fa- bricante, sino dos arquitecturas diferentes, del mismo fabricante y tener así mayores elementos de juico a la hora de concluir. Es de aclarar que estas referencias son a su vez comerciales y relativamente económi- cas dentro de lo ofrecido en mercado rela- cionado.
En adelante el documento está organiza- do de la siguiente forma: en la Sección 2 se describe el diseño del controlador difuso a implementar, en la Sección 3 se describe las características básicas de las tres arquitec- turas a comparar y el algoritmo del contro- lador utilizado, en la Sección 4 se presenta el análisis de resultados y finalmente en la Sección 5 las conclusiones.
2. CONTROLADOR DIFUSO
La selección del controlador difuso obede- ce a dos características fundamentales en la implementación de un sistema de con- trol de nivel, la primera es el que permite el diseño del controlador sin necesidad de establecer un modelo matemático riguroso del sistema, lo cual está fuera del interés de este trabajo. Por otro lado, aunque el modelamiento de un sistema basado en un único tanque no es difícil, el utilizar técnicas de control clásico derivaría en un controla- dor digital, que comparado con el difuso no genera una fuerte carga computacional, as- pecto fundamental para la comparación de las arquitecturas deseadas.
El diseño del controlador difuso está en- marcado en un sistema de control de nivel cuyo actuador es una electroválvula de lle- nado y desagüe del tipo proporcional FESTO MPYE, la cual opera en el rango de 0 a 5 vol- tios, para máximo y mínimo caudal respec- tivamente, como se aprecia en la figura 1.
La respuesta de la válvula permite inferir la forma de las funciones de pertenencia a utilizar y el universo de discurso de salida (Vi), el cual se establece en corresponden- cia con la acción de control. Para este caso, dicha acción de control corresponde a una señal PWM generada por el microcontrola- dor a utilizar, con un ciclo útil dado en por- centaje (0-100), a fin de generar el rango de voltaje de operación de la válvula.
La figura 2 muestra el esquema de control a utilizar, el sensor de nivel corresponde a un sensor ultrasónico de referencia PE- PPERL-FUCHS UB8010-18GM40-I-V1, el cual toma mediadas en el rango de 50 a 800 mm con una resolución de 0,4 mm. Las entradas del controlador difuso están de- terminadas por la diferencia entre el nivel deseado en el tanque (Nr) y el nivel medido en un instante k (Nt), y la razón de cambio de dicha diferencia, Es decir, el error de nivel y su derivada, como se indica la ecuación 1.
... (1)
Debido a que se busca generar una cierta carga computacional, se requiere un nú- mero considerable de funciones de perte- nencia. Típicamente, se encuentra que en el diseño de controladores difusos, al error se le asignan etiquetas lingüísticas de "cero", "bajo", "medio" y "alto", sin embargo para aumentar los requerimientos de almace- namiento del microcontrolador y aumentar el tiempo de procesamiento requerido, se divide la etiqueta "medio" en dos, "medio alto" y "medio bajo". Dado que el error pue- de ser positivo o negativo se generan cua- tro condiciones derivadas de esta etiqueta , aumentando así de 49 reglas de inferencia a 81.
El conjunto difuso que caracteriza la entra- da del error y su derivada es:
...
donde e se encuentra en el rango
...
Debido a la naturaleza "lenta" del siste- ma de nivel, la variación del error es pe- queña, por lo que el conjunto difuso de se establece en el rango de = {-10,..., 0,...,10} . Para la salida, respecto a la señal de con- trol de la válvula, se tiene el conjunto difuso Vi = {L, ml, mH, h} en el rango Vi = {0....100}. Donde en cada caso p representa positivo, n a negativo, h a alto, m a medio, l a bajo y z a cero, por ejemplo ph corresponde a error positivo alto. En la figura 3 se ilustra cada uno de los conjuntos difusos definidos.
La forma de las funciones de pertenencia de dichos conjuntos difusos, tanto de en- trada como de salida, se derivan de la ac- ción deseada para el comportamiento del sistema de control de nivel y se relacionan con la forma de accionado de la válvula (Fig 1). Por ejemplo se observa que tanto para el error como para el delta del error, en los conjuntos de entrada, la función de perte- nencia triangular que caracteriza el cero (z) tiene una base reducida, lo cual está orien- tado a asegurar un error de estado estacio- nario cero en el nivel final del tanque. Por consiguiente, cada función de pertenencia permite una acción de llenado o vaciado gradual, según el incremento del error y su derivada. Bajo esta misma lógica, el que las funciones de pertenencia ph y nh, del con- junto del error sean trapezoidales, asegura una acción de apertura máxima de llenado o vaciado, a fin de disminuir el tiempo de respuesta del sistema.
Otra característica de los conjuntos difu- sos definidos es que, para cualquier valor de entrada se tendrá una pertenencia total igual a uno (1) en las funciones de perte- necía dentro de cada universo de discurso (Ruspini). La base de reglas de activación para el controlador difuso se muestra en la Tabla 1. El método de defuzzyficación uti- lizado corresponde al centro de gravedad (COG), el cual se muestra en la ecuación 2.
... (2)
Este método de defuzzyficación permite que el resultado obtenido, para una activa- ción de reglas determinada, cubra la mayor parte del universo de discurso de salida, para el caso del COG se tiene del 1,3 al 97,8 por ciento, mientras que otros métodos convencionales como el medio de los máxi- mos MOM, permite obtener del 2,3 al 95,4 por ciento.
3. ARQUITECTURAS IMPLEMENTADAS
Las arquitecturas escogidas obedecen a referencias de fácil adquisición y de uso común en el desarrollo de sistemas micro- controlados, con características base como son: encapsulado tipo PDIP, 20-28 pines de conexión, puertos de entrada/salida di- gital y canales de conversión análogo digi- tal de 10 bits de resolución. Para el caso y bajo estas características se emplean: un microcontrolador MSP430G2452 de Texas Instruments, un microcontrolador 18f2550 de Microchip y un DSPIC30f4012 de este mismo fabricante. La Tabla 2 muestra una relación de las características principales de cada una de estas arquitecturas.
Los criterios de evaluación que dan lugar a la comparación de estos tres microcontro- ladores, son: cuanto espacio en memoria de programa utiliza cada uno, este parámetro está asociado al compilador de C que usan. Cuanto espacio de la memoria de datos ocupa, lo cual depende del bus de datos y la compilación, en este caso se tiene un gran uso de esta debido al alto número de reglas generadas en el diseño del controlador, en este caso 81 reglas en total. Finalmente se tiene el tiempo de procesamiento, paráme- tro para el cual todos los dispositivos usan un oscilador de 10 MHz.
Para la programación del controlador difu- so diseñado en cada una de las arquitec- turas escogidas, se utiliza el algoritmo de inferencia Mamdani presentado en [11] y el cual se muestra en la figura 4. De forma tal que el programa general se desarrolla en relación al código en lenguaje C propio de cada arquitectura y su compilador. En la figura 5 se presenta el diagrama de flu- jo general para la programación de los mi- crocontroladores, respecto al esquema de control establecido.
El código, según el diagrama de flujo, ini- cia estableciendo las variables y configu- ración de puertos y periféricos propios de cada arquitectura. Se debe adquirir el valor correspondiente al nivel actual del tanque, por medio de una conversión análogo-digi- tal, la cual una vez realizada permite calcu- lar tanto el error actual como su derivada, dado un nivel de referencia. Teniendo estos parámetros se procede a fusificarlos, obte- niendo el valor del ciclo útil de la señal PWM que acciona la válvula, después de aplica- do el algoritmo de inferencia mamdani y su respectiva defuzzyficación. Dicha labor se realiza periódicamente para actualizar el valor de apertura/cierre de la válvula según la acción de control.
4. ANÁLISIS DE RESULTADOS
La ejecución del código mostrado en el dia- grama de flujo de la figura 5, presentó una carga en la memoria de programa y de datos para cada arquitectura como se muestra en las figuras 6 a 8. La variación en el uso de la memoria de programa está directamen- te ligada a como el compilador de C genera el código en lenguaje de máquina, para lo cual algunos son más eficientes que otros, por ejemplo para el caso de las dos arqui- tecturas de Microchip se utilizó una versión gratuita que no está orienta a maximizar la eficiencia en dicha tarea.
Se observa que el dspic ocupa menor espa- cio en memoria, pero no muy diferente al utilizado por el micro de TI, sin embargo en cuanto a memoria de datos se invierten los papeles. En este último caso, da a lugar la consideración de la capacidad de memoria del micro de TI, ya que no es muy amplia y como se evidencia en la figura 8 se usa casi completamente, lo que limita la cantidad de reglas o funciones adicionales con las que se podría mejorar la respuesta del contro- lador implementado. La diferencia notable en cuanto a memoria de datos encontrada en el pic18f2550, obedece a la cantidad de bits del bus de datos que para este es de 8, mientras para las dos anteriores es de 16, si tomamos este punto de referencia dicho micro estaría utilizando 268 Bytes, un va- lor aún por encima de las dos arquitecturas previas mencionadas.
La Figura 9 y 10 muestra la respuesta final del sistema de control de nivel, en la prime- ra cuando la referencia está por encima del nivel actual del tanque y la segunda cuando está por debajo. Debido a que en el siste- ma se establece un tiempo de muestreo de 1 segundo, la respuesta final de control es la misma para cada arquitectura, por lo que solo se observa una única curva de res- puesta en la variable del nivel del tanque (Nt). Sin embargo en función al tiempo de ejecución por instrucción de cada arquitec- tura y la cantidad de memoria de programa utilizada se puede inferir el tiempo de pro- cesamiento. En la Tabla 3 se establece un estimado del tiempo de ejecución del algo- ritmo, donde se observa que este es menor en el micro de TI.
De forma general, la respuesta del contro- lador es adecuada en términos del caudal que maneja la electro válvula y la respues- ta de las arquitecturas microcontroladas. El error de estado estacionario es cero en cada caso y la división de la etiqueta lin- güística "medio" empleada genera mayor tiempo de apertura de la válvula, ayudando a la reducción del tiempo de asentamiento.
5. CONCLUSIONES
Se logró implementar un algoritmo de control difuso, orientado a un sistema de control de nivel, el cual generó un reque- rimiento considerable, tanto de memoria como de tiempo de ejecución, en la progra- mación de las tres arquitecturas de hard- ware escogidas, permitiendo así realizar una comparación general del desempeño de cada una.
La selección de una arquitectura específica, para dar solución a un requerimiento por medio de un sistema microcontrolado, de- pende en gran medida de la aplicación. Para el caso particular de un controlador difuso, los resultados obtenidos para el microcon- trolador MSP430G2452, se muestran su- periores a las dos arquitecturas de Micro- chip, que aun cuando no es considerable la mejora ofrecida, sobresale dentro del mar- co experimental establecido. En contra- parte la arquitectura de esta referencia en particular de TI, se encuentra en los límites necesarios para el desarrollo del algoritmo, inconveniente no presentado en las otras dos y el cual afectaría un mejora en la res- puesta del mismo.
Para la aplicación de un sistema de control de nivel, se evidencio que los tiempos de respuesta del microncontrolador no son considerables, dada la naturaleza "lenta", en relación al tiempo de procesamiento, de la aplicación. Por lo tanto, en estos casos prima la capacidad de memoria y módulos periféricos. Aunque el microcontrolador de TI utilizado no posee un periférico de PWM interno, a diferencia de los de Microchip, el implementarlo con temporizadores no presentó una carga adicional de procesa- miento.
6. BIBLIOGRAFÍA
[1] Horvat, G.; Sostaric, D.; Zagar, D.; "User authori- zation system using ZigBee WSN and AVR ar- chitecture," Telecommunications Forum (TEL- FOR), 2011 19th , vol., no., pp.381-384, 22-24 Nov. 2011.
[2] Deaky, B.; Lupulescu, N.B.; Ursutiu, D.;, "Exten- ded educational use of the Microcontroller Stu- dent Learning Kit (MCU SLK)," Global Enginee- ring Education Conference (EDUCON), 2011 IEEE, vol., no., pp.913-916,4-6 April 2011.
[3] Zul Azfar, A.; Hazry, D.;, "A simple approach on implementing IMU sensor fusion in PID con- troller for stabilizing quadrotor flight control," Signal Processing and its Applications (CSPA), 2011 IEEE 7th International Colloquium on , vol., no., pp.28-32,4-6 March 2011.
[4] Hong-Chan Chang; Li-Chien Huang; Cheng- Chuan Chen; Cheng-Chein Kuo; "Design and implementation of remote terminal unit for feeder automation system with high perfor- mance microcontroller,"lndustrial Electronics and Applications (ICIEA), 2011 6th IEEE Con- ference on , vol., no., pp.382-386, 21-23 June 2011.
[5] Garcia-Breijo, E.; Atkinson, J.; Garrigues, J.; Gil, L.; Ibanez, J.; Glane, M.; Olguin, C.;, "An elec- tronic tongue for monitoring drinking waters using a fuzzy ARTMAP neural network imple- mented on a microcontroller," Industrial Elec- tronics (ISIE), 2011 IEEE International Sympo- sium on , vol., no., pp.1270-1275, 27-30 June 2011.
[6] Jimenez Moreno Robinson, Aviles Sanchez Os- car, Espinosa Fabio, "Level measurement com- parison between 3D vision system based on Kinect and ultrasonic industrial sensor". Asian Transactions On Engineering ISSN: 2221-4267 ed:v.2fasc.5 p.10-19,2012
[7] Li Liang; "The application of fuzzy PID contro- ller in coupled-tank liquid-level control system," Electronics, Communications and Control (ICECC), 2011 International Conference on , vol., no., pp.2894-2897,9-11 Sept. 2011.
[8] Zhuo Wang; Qiang Wang;, "Application of fuzzy controller in drum water-level control," Mecha- tronic Science, Electric Engineering and Com- puter (MEC), 2011 International Conference on, vol., no., pp.174-176,19-22 Aug. 2011.
[9] Jimenez Moreno Robinson, Aviles Sanchez Os- car, Espinosa Fabio y Gordillo, Camilo. "Machi- ne Vision algorithms applied to dynamic traffic light control". Revista Dyna ISSN: 0012-7353 ed: Universidad Nacional de Colombia, v.80 fasc.180 p.56-,2013.
[10] Sanchez, A.; Blanc, S.; Yuste, P; Serrano, J.J.; "A low cost and high efficient acoustic modem for underwater sensor networks," OCEANS, 2011 IEEE - Spain , vol., no., pp.1-10, 6-9 June 2011.
[11] Babuska Robert, "Fuzzy and Neural Control DISC Course Lecture notes". Delft University of Technology. Sept 2004.
Robinson Jiménez Moreno
Ingeniero Electrónico, M.Sc. Profesor, Investigador GAV
Universidad Militar Nueva Granada, Bogotá, Colombia
Oscar Aviles Sánchez
Ingeniero Electrónico, Ph.D. Profesor, Investigador DAVINCI
Universidad Militar Nueva Granada Bogotá, Colombia
Olga Lucía Ramos Sandoval
Ingeniero Electrónico, M.Sc. Profesora
Universidad Militar Nueva Granada, Bogotá, Colombia
Fecha de recepción: 27 de noviembre de 2012
Fecha de aprobación: 10 de mayo de 2013
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
Copyright Military University of New Granada Jun 2013