7
Abstract— This paper presents some methodological aspects for implementing an interval type-2 fuzzy logic processor over a low cost microcontroller. A detailed description of the computational model of the processor is provided. Particular emphasis is given to the type reduction stage. The implementation of the processor is characterized in functional terms and validated over the inverted pendulum control problem by using hardware emulation. Results show that the processor exhibits an inference speed that guarantees its real-time operation on this application. Moreover, control performance results are better for the processor regarding a conventional type-1 fuzzy controller. Keywords— type-2 fuzzy systems, fuzzy hardware, embedded systems, fuzzy control. I. INTRODUCCIÓN A implementación hardware de los sistemas difusos convencionales es un área bien conocida tanto en academia [1] como en industria [17],[18]. Los dispositivos para la implementación de estos sistemas cubren tecnologías como Field Programmable Gate Arrays (FPGAs), Procesadores de Señal Digital (DSP) y microcontroladores, entre otros [1]. Por otro lado, los Sistemas Difusos Tipo-2 (SDT2) tan solo han sido implementados sobre plataformas de hardware dedicado dado que estos recientemente han comenzado a pasar de la teoría a las aplicaciones en el mundo real [4]. Se sabe que los SDT2 modelan niveles de incertidumbre más altos con respecto a sus contrapartes tradicionales [3]. La evidencia experimental ha demostrado que los SDT2 son más robustos que los sistemas difusos convencionales en varias aplicaciones [4],[6]. Este hecho y la necesidad de hacer frente a las aplicaciones del mundo real y la electrónica de consumo han favorecido el desarrollo de las implementaciones hardware de SDT2 sobre varias tecnologías [5],[6],[13],[14],[15]. En particular, las implementaciones de SDT2 han estado enfocadas en Sistemas Difusos Tipo-2 de Intervalo (SDT2I) dado que son computacionalmente más simples que los sistemas difusos tipo dos generales. Dadas las características particulares de estas implementaciones hardware, se ha acuñado el nombre de Procesador Difuso Tipo Dos (PDT2) para diferenciarlas de la implementaciones software [5]. Según nuestro conocimiento, a la fecha se han llevado a cabo tan solo dos implementaciones de PDT2 sobre M. Melgarejo, Universidad Distrital Francisco José de Caldas, Bogotá DC, Colombia, [email protected] G. Sierra, Universidad Distrital Francisco José de Caldas, Bogotá DC, Colombia, [email protected] J. Bulla, Network TV, Bogotá DC, Colombia, [email protected] microcontroladores [13],[14]. En [13] se presenta la implementación de un PDT2 de intervalo sobre un microcontrolador de bajo costo. Por otro lado, en [14] se describe la implementación microcontrolada de un PDT2 triangular con su correspondiente sistema de desarrollo. Estos trabajos se limitan al dominio de la implementación de los sistemas empotrados dejando de lado la descripción de la aplicabilidad misma de los SDT2 desarrollados. En ese sentido, este trabajo pretende extender los resultados reportados en [13] en relación a la implementación del PDT2 y describir su aplicación en el sistema de control de un péndulo invertido, verificando el mejor desempeño de estos controladores con respecto a los Tipo uno. El artículo está organizado de la siguiente manera: la sección II presenta el modelo computacional del PDT2I. La sección III describe la implementación del procesador sobre una arquitectura de un microcontrolador particular. Luego la sección IV muestra los resultados de implementación del procesador y hace una caracterización detallada de la misma. La aplicación del procesador en el sistema de control de un péndulo invertido se presenta en la sección V. Finalmente, la sección VI se presenta a manera de conclusión. II. MODELO COMPUTACIONAL DEL PDT2I La estructura de un SDT2I se presenta en Fig.1 [3],[13]. Ésta guía la propuesta de un modelo computacional para un PDT2I. Las particularidades del modelo seleccionado en este trabajo se describen a continuación: A. Fusificación y Huella de Incertidumbre Las huellas de incertidumbre de cada conjunto difuso tipo dos de intervalo se representa por medio de las funciones de pertenencia superior e inferior, tal como se muestra en Fig. 2. Cada una de estas funciones se implementa usando un esquema de búsqueda en tabla [1],[5],[13]. El nivel de discretización para describir las funciones de pertenencia depende de las limitantes de la plataforma computacional que se seleccione. El esquema de búsqueda en tabla implica que la fusificación singleton se realiza por la indexación de una memoria en la que las funciones han sido almacenadas. Esto ofrece tiempos de computación bajos en comparación con el cálculo explícito de una función de pertenencia [1]. Sin embargo, la demanda de recursos de memoria aumenta rápidamente cuando el número de entradas o funciones de pertenecía crece [1],[2],[5]. G. K. Sierra, J. O. Bulla and M. A. Melgarejo, Member, IEEE An Embedded Type-2 Fuzzy Processor For The Inverted Pendulum Control Problem L IEEE LATIN AMERICA TRANSACTIONS, VOL. 9, NO. 3, JUNE 2011 263

An Embedded Type-2 Fuzzy Processor For The Inverted Pendulum … · 2011-06-08 · ntroide gene e intervalo. E nuación: xi (i =1,2,.. iendo x el d l valor de la f valor de la f er

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: An Embedded Type-2 Fuzzy Processor For The Inverted Pendulum … · 2011-06-08 · ntroide gene e intervalo. E nuación: xi (i =1,2,.. iendo x el d l valor de la f valor de la f er

Abstract— This paper presents some methodological aspects for implementing an interval type-2 fuzzy logic processor over a low cost microcontroller. A detailed description of the computational model of the processor is provided. Particular emphasis is given to the type reduction stage. The implementation of the processor is characterized in functional terms and validated over the inverted pendulum control problem by using hardware emulation. Results show that the processor exhibits an inference speed that guarantees its real-time operation on this application. Moreover, control performance results are better for the processor regarding a conventional type-1 fuzzy controller. Keywords— type-2 fuzzy systems, fuzzy hardware, embedded systems, fuzzy control.

I. INTRODUCCIÓN

A implementación hardware de los sistemas difusos convencionales es un área bien conocida tanto en

academia [1] como en industria [17],[18]. Los dispositivos para la implementación de estos sistemas cubren tecnologías como Field Programmable Gate Arrays (FPGAs), Procesadores de Señal Digital (DSP) y microcontroladores, entre otros [1]. Por otro lado, los Sistemas Difusos Tipo-2 (SDT2) tan solo han sido implementados sobre plataformas de hardware dedicado dado que estos recientemente han comenzado a pasar de la teoría a las aplicaciones en el mundo real [4].

Se sabe que los SDT2 modelan niveles de incertidumbre más altos con respecto a sus contrapartes tradicionales [3]. La evidencia experimental ha demostrado que los SDT2 son más robustos que los sistemas difusos convencionales en varias aplicaciones [4],[6]. Este hecho y la necesidad de hacer frente a las aplicaciones del mundo real y la electrónica de consumo han favorecido el desarrollo de las implementaciones hardware de SDT2 sobre varias tecnologías [5],[6],[13],[14],[15]. En particular, las implementaciones de SDT2 han estado enfocadas en Sistemas Difusos Tipo-2 de Intervalo (SDT2I) dado que son computacionalmente más simples que los sistemas difusos tipo dos generales. Dadas las características particulares de estas implementaciones hardware, se ha acuñado el nombre de Procesador Difuso Tipo Dos (PDT2) para diferenciarlas de la implementaciones software [5].

Según nuestro conocimiento, a la fecha se han llevado a cabo tan solo dos implementaciones de PDT2 sobre

M. Melgarejo, Universidad Distrital Francisco José de Caldas, Bogotá

DC, Colombia, [email protected] G. Sierra, Universidad Distrital Francisco José de Caldas, Bogotá DC,

Colombia, [email protected] J. Bulla, Network TV, Bogotá DC, Colombia, [email protected]

microcontroladores [13],[14]. En [13] se presenta la implementación de un PDT2 de intervalo sobre un microcontrolador de bajo costo. Por otro lado, en [14] se describe la implementación microcontrolada de un PDT2 triangular con su correspondiente sistema de desarrollo. Estos trabajos se limitan al dominio de la implementación de los sistemas empotrados dejando de lado la descripción de la aplicabilidad misma de los SDT2 desarrollados. En ese sentido, este trabajo pretende extender los resultados reportados en [13] en relación a la implementación del PDT2 y describir su aplicación en el sistema de control de un péndulo invertido, verificando el mejor desempeño de estos controladores con respecto a los Tipo uno.

El artículo está organizado de la siguiente manera: la sección II presenta el modelo computacional del PDT2I. La sección III describe la implementación del procesador sobre una arquitectura de un microcontrolador particular. Luego la sección IV muestra los resultados de implementación del procesador y hace una caracterización detallada de la misma. La aplicación del procesador en el sistema de control de un péndulo invertido se presenta en la sección V. Finalmente, la sección VI se presenta a manera de conclusión.

II. MODELO COMPUTACIONAL DEL PDT2I

La estructura de un SDT2I se presenta en Fig.1 [3],[13]. Ésta guía la propuesta de un modelo computacional para un PDT2I. Las particularidades del modelo seleccionado en este trabajo se describen a continuación:

A. Fusificación y Huella de Incertidumbre

Las huellas de incertidumbre de cada conjunto difuso tipo dos de intervalo se representa por medio de las funciones de pertenencia superior e inferior, tal como se muestra en Fig. 2. Cada una de estas funciones se implementa usando un esquema de búsqueda en tabla [1],[5],[13]. El nivel de discretización para describir las funciones de pertenencia depende de las limitantes de la plataforma computacional que se seleccione. El esquema de búsqueda en tabla implica que la fusificación singleton se realiza por la indexación de una memoria en la que las funciones han sido almacenadas. Esto ofrece tiempos de computación bajos en comparación con el cálculo explícito de una función de pertenencia [1]. Sin embargo, la demanda de recursos de memoria aumenta rápidamente cuando el número de entradas o funciones de pertenecía crece [1],[2],[5].

G. K. Sierra, J. O. Bulla and M. A. Melgarejo, Member, IEEE

An Embedded Type-2 Fuzzy Processor For The Inverted Pendulum Control Problem

L

IEEE LATIN AMERICA TRANSACTIONS, VOL. 9, NO. 3, JUNE 2011 263

Page 2: An Embedded Type-2 Fuzzy Processor For The Inverted Pendulum … · 2011-06-08 · ntroide gene e intervalo. E nuación: xi (i =1,2,.. iendo x el d l valor de la f valor de la f er

Fi

muspa

memmmcomalun

paprsudide

• •

s

gura. 1. Mode

B. Motor de in

El motor demodelo dado qsados en ingenara la implicac

Se sabe quemás simple qmpotrados sen

máximo y la smás operacionomputacional

motor Mamdalgoritmo que sna plataforma

C. Reductor d

El algoritmoara calcular lrocedimiento uperior del ceifuso tipo 2 describe a conti

• Distribuir

ascendente s

• Siendo iw e

ix y iw el

ix , establec

calcular:

=

=k

iiiwxa

1

=

+=k

iiwb

1

bay =

Encontrar k

Verificar si establece yl

calcular:

(ksign −′=

elo de un SDT2 [3

nferencia

e inferencia Mque es uno dniería [3],[15]ción y el operae el operador que el operancillos [1],[5]suma algebraines que la secuencial co

ani hereda la sse escoge parsecuencial se

de Tipo

o Karnik Menla reducción iterativo que

entroide genede intervalo. Einuación:

,..2,1(ixi =siendo x el d

l valor de la f

l valor de la f

cer k igual a

+=

+ i

N

kiii wx

1

+=

N

ki

iw1

´ tal que ´≤kx

k´= k, si es al = y y k

)k

3],[13].

Mamdani se sde los motore. Éste emplea ador máximo p

mínimo es cador producto]. Esto pasa sca, dado que primera sobr

omo procesadsimplicidad dera su cómputo

expone en de

ndel Mejoradode tipo. Estencuentra lo

eralizado (yl, El procedimien

)., N

de f

dominio del con

función de per

función de per

al entero más

1´+≤ kxy .

así, el procesoes llamado

selecciona pars comúnmentel operador m

para la agregacomputacionalo en processimilarmente

la última dere una plata

dor [1]. Así pue sus operado

o teniendo en talle en [13].

o (EKM) [7] te algoritmo

os límites infeyr) de un conto para halla

forma ordena

njunto difuso.

rtenencia supe

rtenencia infer

s cercano a N

o ha terminadL. De lo co

ra este te más

mínimo ación. lmente

sadores con el manda aforma ues, el res. El cuenta

se usa es un

erior y onjunto ar yl se

ada y

erior en

rior en

N/2.4 y

(1)

(2)

(3)

do y se ntrario

(4)

Figurinterv

=′a

=′b

y =′ • E

a

Econ pertparaN/1

Lpromde r

Eimpantebaseoper

Ay seimpprop

D.alg

El punivimp

valo

comnúmbúsq

ra. 2. Huella de valo.

=

+=max(

min(

k

ki

sa

=

+=,max(

,min(

k

ki

sb

ba ′′=

Establecer y=yal paso numer

El procedimientener en cu

tenencia supera el extremo s.7.

La salida finamedio de yl y yequisitos com

En comparaciólica menor c

ecesor [3], no e de conocimiraciones aritmA pesar de que inicializa enlica un gastopone a una me

. Mejora de goritmo EKM

paso tres del averso de discurlica una com

ores que toma

mparación, por mero de operaqueda.

incertidumbre de

+′−

),

1),

(k

kii wwx

+′−

),

1),

)(k

k

ii ww

y´, a=a´, b=b´ro 3.

nto para calcuuenta cuando rior y cuando uperior, el val

al del sistemyr, que es una

mputacionales. ón con otros cantidad de i

requiere de eiento del SDT

méticas como oe este algoritm

n un punto ópo computacionejora al EKM.

las prestaM

algoritmo EKMrso discretizad

mparación del

a ix . Cada val

lo que este praciones que d

un conjunto difu

)iw

)

´, k=k´ y rem

ular yr es simise debe usa

la inferior y tlor de k inicia

ma difuso se a operación se

métodos, el iteraciones coentrenamientoT2 [9] y evitaotros métodos mo converge ptimo [7], su nal importante

aciones comp

M demanda lado de los punto

centroide ha

lor diferente

roceso puede ddependerá de

uso tipo dos de

mitirse nuevam

ilar [7], solo bar la funcióntener presenteal recomendad

calcula comencilla en térm

algoritmo Eon respecto ao especial sobra usar demasiiterativos [10]exponencialmpaso número e. Al respect

putacionales

a búsqueda eos ´k y 1´+k . allado y con

de i requiere

demandar un be la estrategia

(5)

(6)

(7)

mente

basta n de e que do es

o el minos

EKM a su re la iadas ].

mente tres

o se

del

en el Esto

n los

una

buen a de

264 IEEE LATIN AMERICA TRANSACTIONS, VOL. 9, NO. 3, JUNE 2011

Page 3: An Embedded Type-2 Fuzzy Processor For The Inverted Pendulum … · 2011-06-08 · ntroide gene e intervalo. E nuación: xi (i =1,2,.. iendo x el d l valor de la f valor de la f er

TABLA I EJEMPLO DE DISCRETIZACIÓN DE UN UNIVERSO DE DISCURSO

i ix

1 0 2 0.039 3 0.078

… … 253 9.828 254 9.867 255 0.906 256 10

Figura. 3. Diagrama de flujo para encontrar ´k y 1´+k .

Suponga que se tiene una variable cuyo dominio está definido entre 0 y 10 voltios y se discretiza ordenada y ascendentemente en 256 puntos (ver Tabla I). Una forma de encontrar ´k y 1´+k se describe en la Fig. 3. Si por ejemplo y es igual a 0.05 voltios

son necesarias tres comparaciones antes de hallar ´k y 1´+k . Sin embargo si y es igual a 9.9 voltios son necesarias 255

comparaciones. Observe entonces, que el paso 3 del EKM demanda el cómputo de numerosas operaciones de búsqueda en memoria.

Con el propósito de reducir el costo computacional del paso 3 del algoritmo EKM, se propone aquí calcular directamente los puntos ´k y 1´+k en lugar de buscarlos. Para que esto sea posible es necesario conocer la función que describe la discretización y que esta función sea univoca.

Si la función de discretización es:

)(ifxi =

(8)

El procedimiento es el que sigue: • Calcule la inversa de (8).

)(1ixfi −=

(9)

• Evalúe (9) en y :

)(1 yfi −= (10)

• Trunque i a su valor entero.

• Llame ik =̀ y 11` +=+ ik .

Visto de otra forma el cálculo aquí propuesto se resume así:

))((` 1 yftruncadok −= (11)

A manera de ilustración se considera a continuación un

ejemplo en donde N es el número de puntos de discretización,

ix es el valor del dominio en el punto i , para i variando desde

uno hasta N y Nx es el máximo valor del dominio.

En el caso de una distribución uniforme se tiene:

iN

xx N

i ⋅= (12)

iN

xx

Ni ⋅= (13)

⋅= y

x

Ntruncadok

N

`

(14)

Observe por ejemplo que para el caso de la distribución uniforme, NxN es un valor conocido y por tanto la

búsqueda de ´k se reduce siempre al computo de un producto independientemente del valor de y .

III. CONSIDERACIONES PARA LA IMPLEMENTACIÓN

Teniendo en cuenta las limitaciones de un microcontrolador de ocho bits, el procesador difuso se adapta según las siguientes consideraciones: • Los conjuntos antecedentes se discretizan en DA puntos y

almacenados como tablas en memoria. • Debido a que cada registro del microcontrolador tiene una

longitud de 8 bits, las funciones de pertenencia toman valores enteros en el intervalo [0, 28 - 1].

• El motor de inferencia y el reductor de tipo operan con los conjuntos consecuentes discretizados en DC puntos. Estos conjuntos son almacenados previamente en memoria.

• Por simplicidad en las operaciones, se determina que la salida tome valores enteros en el intervalo [0, 28 - 1].

Como primera implementación se desarrolla un procesador

difuso Tipo-2 de intervalo con dos entradas, dos conjuntos por entrada discretizados en 256 puntos (DA=256), cuatro reglas y cuatro consecuentes discretizados en 256 puntos. (DC=256). Usando la Tabla II [13] para estimar los recursos hardware requeridos en esta implementación se obtiene son necesarios 1024 bytes en RAM y 4096 en flash. Además de estos recursos, se debe tener en cuenta el espacio requerido por el programa y otras variables temporales y en consecuencia se debe elegir un microcontrolador con características levemente superiores. Así pues, el PDT2I se implementa en el microcontrolador AP32 de ocho bits miembro de la familia HC08 de Freescale® debido a que este dispositivo cuenta con un modulo ADC para la adquisición de las variables de entrada, memoria RAM y flash suficientes y además es económico.

No Si ix > y

1` −←ik

1+= ii

1=i

MELGAREJO REY et al.: EMBED TYPE-2 FUZZY PROCESSOR 265

Page 4: An Embedded Type-2 Fuzzy Processor For The Inverted Pendulum … · 2011-06-08 · ntroide gene e intervalo. E nuación: xi (i =1,2,.. iendo x el d l valor de la f valor de la f er

TABLA II [13] USO DE MEMORIA PARA PROCESADOR DIFUSO TIPO-2 DE INTERVALO.

Parámetro Flash (B) RAM (B) Conjuntos Antecedentes 2xMxNxDA 0 Conjuntos Consecuentes 2xMxNxDC 0

Motor de Inferencia 0 4*DC Total de posiciones 2xMxNx(DA+DC) 4*DC

TABLA III CARACTERÍSTICAS AP32.

Parámetro Valor Descripción Memoria

Flash 32 KB

Memoria donde se almacena el programa y las tablas

Memoria RAM

2 KB

Memoria donde se almacenan las variables temporales durante la

operación. 1 Registro 1 B Longitud de un registro

ADC 8 bits Resolución del modulo analógico-

digital Fmbus 8 MHz Frecuencia máxima de bus

Las características de este microcontrolador se resumen en la Tabla III.

Se realiza una implementación software de un primer modelo del PDT2I. Allí se emulan las limitaciones y consideraciones del microcontrolador, con el ánimo de visualizar y validar los resultados futuros. Además, esta herramienta facilita la corrección de la implementación del modelo.

El modelo computacional se traduce a lenguaje assembler y se describe mediante un programa principal y varias subrutinas correspondientes a cada componente del PDT2I: fusificador, motor de inferencia, reductor de tipo y defusificador.

Algunas operaciones requeridas en el procesador no están contenidas en el set de instrucciones del AP32. Las operaciones de mínimo y máximo son un ejemplo de ello y en consecuencia se deben generar pequeñas rutinas para computarlas.

Por otra parte, el algoritmo EKM exige cálculos de suma, resta y división con operadores de longitud mayor a un byte, por lo tanto se deben generar rutinas para estas operaciones. No obstante, con las consideraciones tomadas, la operación de multiplicación se realiza siempre entre operadores de máximo un byte de longitud, operación contenida en el set de instrucciones y por lo tanto suficiente.

IV. RESULTADOS DE IMPLEMENTACION

A. Validación de la implementación.

Usando una herramienta de desarrollo para microcontroladores, se valida la implementación del PDT2I, mediante una prueba que consta de los siguientes pasos:

• Se genera un numero aleatorio entero en el intervalo [0,255] por cada entrada.

• En simulación se ingresan los valores para cada entrada.

• Se realiza una inferencia completa y se comparan los resultados numéricos con el obtenido en la implementación software.

TABLA IV RESULTADOS DE IMPLEMENTACIÓN.

Variables Valor Número de ciclos promedio 274311

Tiempo promedio de Inferencia 34,2 ms Desviación estandar 2.33 ms

Inferencias promedio por Segundo 29,239 Total memoria Flash usada 4108 B (12.84 %) Total memoria RAM usada 1043 B (50.92 %)

TABLA V COSTO COMPUTACIONAL POR COMPONENTE

Componente Porcentaje del Tiempo Total Fusificador 0.065 %

Motor de inferencia 69.269 % Reductor de tipo 30.606 %

Defusificador 0.015 %

• Se registra el número de ciclos de reloj utilizados. • Teniendo en cuenta la frecuencia de bus, se calcula el

tiempo de inferencia y el número de inferencias por segundo.

• La prueba se repite 50 veces.

B. Resultados iniciales.

Los resultados expuestos en la Tabla IV corresponden a la implementación del PD-T2I en el microcontrolador AP32 configurado a una frecuencia de bus de 8 MHz, es decir, tiempo por ciclo de 0.125us. Como el número de ciclos promedio es 274311, entonces el tiempo promedio por inferencia es de 274311*0.125us, es decir el PD-T2I toma 34.2 ms para completar una inferencia. La mayor parte de este tiempo se debe al motor de inferencia tal como se muestra en la Tabla V.

C. Reducción del tiempo de procesamiento.

Debido al número de operaciones que se realizan en el Motor de Inferencia, este es el componente que demanda mayor parte del tiempo de procesamiento. El algoritmo escogido para el Motor de Inferencia [13] requiere operar máximos y mínimos entre vectores cuya longitud está relacionada al nivel de discretización de los conjuntos consecuentes.

Si estos vectores fueran más pequeños, el número de operaciones necesarias sería menor, reduciendo el tiempo de procesamiento. Esto significa que si se disminuye el nivel de discretización de los conjuntos consecuentes se obtendrá un tiempo de inferencia total menor.

Para comprobar esto, se utiliza la misma metodología descrita en la parte IV variando DC desde 4 hasta 256. Los resultados obtenidos se observan en Fig. 4, en donde para el mínimo nivel de discretización de cuatro puntos se obtiene un tiempo promedio de inferencia de 2.15 ms, correspondiente al 6.27% del tiempo obtenido con resolución de 256 que es de 34.28 ms.

D. Efectos de la discretización en la salida del procesador.

Aunque la reducción en tiempo es significativa, debe también evaluarse la incidencia de la discretización sobre la salida del procesador. Para tal fin, se realiza una prueba que consta de los siguientes pasos:

266 IEEE LATIN AMERICA TRANSACTIONS, VOL. 9, NO. 3, JUNE 2011

Page 5: An Embedded Type-2 Fuzzy Processor For The Inverted Pendulum … · 2011-06-08 · ntroide gene e intervalo. E nuación: xi (i =1,2,.. iendo x el d l valor de la f valor de la f er

Filos

Fidis

• •

prdicodidodisimlapr

au

gura. 4. Variaciós niveles de discr

gura. 5. Error cuscretización. Calc

Se generan[0,255] por

En simulacpara microentrada.

Se realiza valores de e

Se registra

Se repite lestudiar.

Los resultadoresenta el erroriferentes nivonsecuentes. Eiscretización donde V2048 se riscretización demboliza la disc

a que se desea romedio de las

De Fig. 5 se umentar a med

ón del tiempo de petización de los c

uadrático del vaculado respecto a

n 50 números r cada entrada.

ción, mediantcontroladores,

una inferenciaentrada.

el valor de sal

la prueba por

os de esta pruer cuadrático deles de disEl error es

de 2048 puntosrefiere al valore 2048 puntos cretización R (medir el error50 pruebas.

(e =

observa que eida que el nive

TA

procesamiento deconsecuentes.

lor de salida pauna discretizació

aleatorios ent.

te una herram, se ingresan l

a completa pa

lida obtenido.

r cada nivel

eba se muestrade la salida delscretización calculado co

s como lo muer de salida delen los conjunto(en la prueba dr. En la grafica

22048 )( RVV −

el error cuadrátel de discretizacABLA VI.

l PDT2I ante cam

ara diferentes nivón de 2048.

teros en el int

mienta de desos valores par

ara cada conju

de discretiza

an en Fig. 5 dol sistema difusen los con

on respecto estra la ecuacil procesador cos consecuentedesde 2048 hasa se presenta e

tico tiene tendeción disminuye

mbios en

veles de

tervalo

sarrollo ra cada

unto de

ación a

onde se so para njuntos a una ión 18, on una es y VR sta 4) a el valor

(18)

encia a e, de

manobtieerrorquieprocdiscrun ediscr

V.

A.

Cmicrel cosistevertiinici

Figur

Figur

Figur

BASE D

Negativo Negativo Positivo Positivo

nera que para ene un error cur obtenido con

ere decir que cesamiento meretización, teni

error que aumenretización.

VALIDACIÓN

Consideracio

Con el prorocontrolada dontrol de un péema de controical superior piales.

ra. 6. Conjuntos

ra. 7. Conjuntos

ra. 8. Conjuntos

)(tθE REGLAS CONTR

NegaPosiNegaPosi

el nivel de duadrático de 0,n resolución dpara aplicaci

enores podemoiendo presententará en la med

N: CONTROL DE

EMULA

ones

opósito de del procesador éndulo invertidol es conservapartiendo de

Antecedentes par

Antecedentes par

Consecuentes de

•(θ

ROL PÉNDULO INV

ativo itivo ativo itivo

discretización ,8, correspondide 8 puntos qiones que reqos considerar re que la salida dida en que se

E UN PÉNDULO

ACIÓN

validar la difuso tipo do

do bajo emulaciar el péndulocondiciones c

ra la entrada (tθ

ra la entrada •

)(tθ

e τ .

•)(t

VERTIDO

Positivo Cero Cero

Negativo

de 128 puntoiente al 2.86 %

que es de 28. quieran tiemporeducir el nivedel sistema tereduzca el niv

O INVERTIDO E

implementaos, este se aplición. El objetivo

o en una posiciertas condici

)

)

os se % del

Esto o de el de endrá vel de

EN

ación ca en o del ición iones

MELGAREJO REY et al.: EMBED TYPE-2 FUZZY PROCESSOR 267

Page 6: An Embedded Type-2 Fuzzy Processor For The Inverted Pendulum … · 2011-06-08 · ntroide gene e intervalo. E nuación: xi (i =1,2,.. iendo x el d l valor de la f valor de la f er

Fiy t

Sogrtom

an

seTaenprunpaintipel

gura. 9. Emulacitipo 1.

obre el péndulravedad, que seorque de reacc

modelo del pénSi se eligen

ngular del pénd

entido contrariabla VI. Los cn Fig. 6, Fig. 7ropone en [6], n experto y arámetros. Notnferiores son lpo-1 de caractel sistema difuso

B. Análisis de

En Fig. 9 se

ión control péndu

o actúan prince ejerce sobre ción o fuerza

ndulo invertidocomo entrada

dulo )(t•θ , las r

o a las manecconjuntos ante

7 y Fig. 8 se essimplemente agregando in

te que si las funlas mismas, eqerísticas similao tipo 1 tambié

e Resultados

muestra la resp

ulo invertido con

cipalmente dos el centro de mde acción [1

o se describe eas la posición

reglas, tomand

cillas del reloj ecedentes y concogen de manehaciendo uso

ncertidumbre nciones de perquivaldría a uares. Con el prén se emula.

puesta en el tie

procesador difuso

fuerzas: la fuemasa del péndul11],[12]. Un pen [16]. n )(tθ y la vel

do )(tθ positivo

se encuentrannsecuentes moera similar a codel conocimieen algunos d

rtenencia superun procesador ropósito de com

empo para un v

o tipo 2

erza de lo; y el posible

locidad

o en el

n en la strados omo se ento de de sus riores e difuso

mparar,

valor

Figur2 pa

iniciprocmueun pπ/30

Edeseestabtiempasade c13%estadcuan

Dun minfersupe

ra. 10. Emulacióara distintos valore

ial de π/15 radcesador difuso estra la respueprocesador di0. En la Tabla empeño de eblecimiento y

mpo de establecar por primera cero. En este a

% el tiempo del do estacionariondo se usa el prDe esta maneramicrocontroladrencia para uerando el rendim

ón control péndules iníciales.

dianes cuando tipo 1 y tipo 2,esta en el tiemfuso tipo 2 p

VII y VIII stos dos sisteerror de estad

cimiento es el vez en una ba

aspecto el procprocesador dif

o se observa urocesador difusa el procesadordor de baja gaun control samiento obtenid

lo invertido con p

el sistema es , mientras que mpo del sistemara valores in

se resumen lemas en cua

do estacionariotiempo que ta

anda de ±0.02 cesador difuso fuso Tipo 1. Enuna reducción so tipo dos. r difuso Tipo 2ama garantiza atisfactorio en

do con el proces

procesador difuso

controlado poen la Fig. 10 s

ma controladoníciales de π/

las diferenciasanto a tiempoo. Se asume quarda el péndulradianes alredTipo 2 mejor

n cuanto al erron del error en

2 implementaduna velocida

n esta aplicasador difuso Tip

o tipo

or un se o por 15 y

s de o de ue el lo en dedor ra en or en 30%

do en d de ación po 1.

268 IEEE LATIN AMERICA TRANSACTIONS, VOL. 9, NO. 3, JUNE 2011

Page 7: An Embedded Type-2 Fuzzy Processor For The Inverted Pendulum … · 2011-06-08 · ntroide gene e intervalo. E nuación: xi (i =1,2,.. iendo x el d l valor de la f valor de la f er

painpeadgaraPaabvedi Eimcopasi

[1

[2

[3

[4

[5

[6

[7

[8

[9

[1

Valor Inicial de π /15 rad π /30 rad

Se han presara la implemntervalo sobreermitieron obtdecuado de la ama baja y al azonable pararticularmente,bordar el conterificar el meifusos tipo dos Este trabajo dmplementaciónonsiderada aquara la síntesis stemas empotr

] I. Baturone, MicroelectronLLC, 2000..

] M. MelgarejoFPGA implemGreat Lakes S

] J. Mendel. Rdirection, Pre

] H. Hagras, “TComputationa2007.

] M. MelgarejoProcessors”, IIssue 1, pp.63

] C. Lynch, H. & Traction Conference on

] D. Wu, J. MIEEE TransacAug. 2009.

] C.H. Chen, Fpp. 23.12, 199

] H. Wu, J. MeTnterval Typevol 10, pp 622

0] M. Melgarejocentroid of anMeeting of th2007, pp. 190

)(tθ

Valor Inicial de

π/15 rad π /30 rad

)(tθ

TABTiempo de

TABError en es

Valor Iniciade

0 rad/se0 rad/se

VI. CON

sentado algunmentación de ue un microcotener una immemoria disp

mismo tiempora el cont, la velocidadtrol de un pénejor desempeñ sobre sus con

deja expuestasn de PDT2I uí, además que

automática derados.

REFE

A. Barriga, Snic Design of F

o, A. Garcia anmentaction of a Symposium on VL

Rule-based Fuzzyentice Hall, 2001.

Type-2 FLC:a neal Intelligence M

o, C. Pena-Reyes.IEEE Computati

3 – 71, 2007 .

Hagras, V. CallaDiesel Engines”n Fuzzy Systems.,

Mendel. “Enhncections on Fuzzy Sy

Fuzzy Logic and N96.

endel, “Unceraintye-2 fuzzy Logic 2-639, October 20

o, “ A fast recurn interval type-2 he North Americ0 – 194, Jun 2007.

•)(tθ

Valor Inicial de

es

0 rad/seg 0 rad/seg

•)( tθ

BLA VII . Establecimiento.

BLA VIII

stado estacionario

l Error enTipo 1

g 0.0102 g 0.0031

NCLUSIONES

as consideracun procesadorontrolador. Es

mplementación ponible en un o garantizar untrol de sisd de inferencindulo invertid

ño que exhibentrapartes tipo us algunas bassobre plataforprovee unos p

e esta clase de

ERENCIAS .Sanchez, C. Ji

Fuzzy Logic-Bas

nd C. Peña, “Hatype-2 fuzzy sys

LSI 2004, Boston,

y Logic Systems.

ew generation of Magazine, Volum

. “Implementing ional Intelligence

aghan. “Embedde”, The 14th Ann, pp. 350 – 351, M

d Karnik MendeSystems, Volume 1

Neural Network H

y bounds and theSystems”, IEEE 002

rsive method to fuzzy set·”, Proc

can Fuzzy inform.

Tiempo de stablecimiento

Tipo 1

3.25 se1.85 se

o

n

ErrorTipo

rad 0.007rad 0.002

iones metodor difuso tipo dstas considera

que hace umicrocontrola

n tiempo de resstemas mecia obtenida pedo bajo emulaen los controluno. ses para aborrmas similareprimeros lineame procesadores

imenez and D. sed Systems, CR

ardware architectstem”, Proc of th pp. 458-461, 200

s, Introduction a

fuzzy controllersme 2, Issue 1, pp.3

Interval Type-2e Magazine, Volu

d Type-2 FLC ofnual IEEE interMay 2005.

el algorithms”, P17, Issue 4. pp.92

Handbook , McGr

eir use in the desiTrans on Fuzzy S

compute the genc. of NAFIPS’07

mation processing

Tiempo

establecimiTipo 2

eg 2.8eg 1.7

r en o 2 71 rad 27 rad

lógicas dos de aciones un uso ador de spuesta

cánicos. ermitió

ación y ladores

rdar la s a la

mientos s sobre

Lopez, RC Press

ture and he ACM 04.

and new

s“. IEEE 30 – 43,

2 Fuzzy ume 2,

f Marine rnational

Proc. of 23 – 934,

raw-Hill,

gn of an Systems,

neralized 7 Annual g society

[11]

[12]

[13]

[14]

[15]

[16]

[17]

[18]

Fue mPapeMicrdel c

del LLausingeninvesCompartícu El pprogr(2008InterSus ásistem

de iento

2

81 seg 77 seg

K. Ogata, Ingeni

B. Kuo, Sistemas

G. Sierra, J. BMicrocontroller-MWSCAS 2008 51 fasc.1 pp .69

S. Coupland.,J. Logic System Environment”, PJune 2008

R. Sepulveda etstage of a type-2Simulink”,studie325, 2009.

L. X. Wang, “ Aed 1, 1997.

D. Hernane SpatUsida, "Fuzzy Transformers", I57, March 2010.

C. Tavares da Moutinho, W. Btechniques appliTransactions, Vo

Jefrde facuJosécomubicartíEle

merecedor del prir Contest IEEE 2

roelectrónica y Aapítulo IEEE CA

Ginade 1ingeCaldmaeunivIntelpuesCon

Mig09 dcon Caldcomlos APoly HaUniv

Logic Systems anne, Suiza. Acniería de la Univstigador del Labo

mputacional en la ulos técnicos. prof. Melgarejo hrama del 2008 I8,2010) Internatio

rnational Symposiáreas de interés smas empotrados,

iería de Control M

s de control autom

Bulla and M. M-Based Interval TIeee Midwest Sym- 72 ,October 200

Wheeler,M. GoEmbedded B

Proc. of FUZZ-IE

t al, “ Modeling 2 fuzzy controller es in computation

A course in fuzzy

tti, I. Nunes da SiControl System

IEEE Latin Amer.

Costa, J. AuguBarra, "Identificaied to a synchrool. 7, No. 2, pp. 2

frey O. Bulla nac1985. Bulla es

ultad de ingenieríé de Caldas, Bog

mo gerente Netwcada en Bogotáculos en el árectrónica de Poten

imer puesto en el 2008’ así como b

Aplicaciones EAMS y tesorero de la

a K. Sierra naci986, es Ingeniera

eniería de la Undas, Bogotá, Colstría en ciencia

versidad. Ha sidoligencia Computsto en el concurs

ntest IEEE 2008’

guel A. Melgarejde octubre de 19honores de la U

das (2001), Mamputadores, gradu

Andes, Bogotá, Cytechnique Federaa sido investigadoversidad de los ALaboratory de ctualmente es p

versidad Distrital oratorio de Autom

misma universid

ha servido comoIEEE World Cononal Conference ium on Advances son: Sistemas difprocesamiento di

Moderno, Prentice

mático, Prentice

Melgarejo “ ImpType-2 Fuzzy Promposium On Circ08

ongora,”A GenerBoard and InteEEE 2008 ,Hong

and simulation using the Xilinx

nal intelligence, V

y systems and co

ilva, R. Andrade Fm for Voltage R

ica Transactions,

usto Lima Barreation, digital con

onous generator",253-262, June 200

ció en Bogotá, Coingeniero electr

ía de la Universidgotá Colombia. Ejwork TV una emá, Colombia. Haea de Inteligenc

ncia, sus áreas de

concurso ‘IEEE becario en Argen

MTA. El ingenieroa IEEE Branch en

ó en Bogotá, Cola Electrónica egreniversidad Distritlombia. Actualmas de la informo autora de un atacional y fue mo ‘ IEEE Latin A

o (M’01), nació

979, es IngenieroUniverisdad distriagister en Inge

uado con honores,Colombia en cooale de Lausanne, Sor del Centro de M

Andes, Colombia ela Ecolé Polyte

profesor asociadoFrancisco José d

mática, Microelecdad. Ha publicad

o miembro del congress on Compon Intelligent Coin Type-2 Fuzzy Sfusos tipo dos, cigital de señales y

e Hall, ed 4, 2003

Hall, ed 7, 1996.

mplementing a Socessor ”, ·”, Procuits And System

ralised Type-2 Fegrated Developg Kong , pp. 681

of the defuzzificSystem GeneratoVolume 257, pp.

ontrol ”, Prentice

Flauzino, W. FernRegulation In P, Vol. 8, No. 1, pp

eiros, M. Nascimntrol and fuzzy , IEEE Latin Am09.

olombia, el 26 de ónico egresado dad Distrital Franjerce profesionalmmpresa de tecnoa sido autor decia Computacioninterés.

Latin America stntina en la Escueo Bulla fue presi

n su Universidad.

lombia, el 17 de esada de la faculttal Francisco Jos

mente es estudianmación en la martículo en el áre

merecedora del pAmerica student P

en Bogotá, Coloo electrónico gradital Francisco Joeniería electróni, de la Universid

operación con la ESuiza (2004). Microelectrónica e investigador invechnique Federalo de la faculta

de Caldas, Colomctrónica e Inteligdo alrededor de 5

omité internacionutational Intellig

omputing y 2011 Systems. omputación evol

y control inteligen

3.

imple oc. of s, vol

Fuzzy pment 1-687,

cation or and 309-

Hall,

nando Power p. 51-

mento logic

merica

Julio de la

ncisco mente ología e tres nal y

tudent ela de idente

Junio tad de sé de

nte de misma ea de

primer Paper

mbia, duado sé de ca y

dad de Ecolé

de la vitado le de

ad de mbia e gencia 50 de

nal de gence, IEEE

utiva, nte.

MELGAREJO REY et al.: EMBED TYPE-2 FUZZY PROCESSOR 269