Animatronic Controlado con Lógica Difusa1

Yurián Zerón Gutiérrez

Escuela de Ingeniería Universidad La Salle

E-mail:yuro4@hotmail.com

Asesor: Eduardo Gómez-Ramírez


RESUMEN


Recibido: Abril de 2005. Aceptado: Mayo de 2005


En este proyecto se presenta un algoritmo de control utilizando lógica difusa como mecanismo de relación entre variables. Debido a que se busca que el comportamiento del ANIMATRONIC sea lo más parecido al humano, el uso de esta tecnología permitió que la relación entre variables fuera muy natural, entendiendo natural como las relaciones cualitativas y cuantitativas que permiten el poder tener un control directo sobre las reacciones del robot a partir de los estímulos aplicados.

Utilizando estos conceptos con base en la inteligencia artificial, podemos imaginar que los cerebros de las criaturas utilizadas en robótica teatral funcionan en relación de un estimulo respuesta, pero al precisar su comportamiento es necesario utilizar la lógica difusa ya que ésta presenta elementos que nos facilitan la respuesta y el comportamiento al querer aparentar y simular vida.

Se pretende establecer un control que se asemeje más al comportamiento humano, dotando al personaje mismo de un algoritmo que hará las funciones del cerebro, controlándole los ojos, la boca, los parpados, etc.

ABSTRACT

In this Project a control algorithm using fuzzy logics as variable relationship mechanism is introduced. As it is intended that the ANIMATRONIC behavior gets as close as possible to that of humans, the use of this technology allowed the variable relationship to be quite natural, understanding natural as the quantitative and qualitative relationships that allow being able to keep a direct control over the robot’s reactions based on the stimuli applied.

Using these concepts based on artificial intelligence, we can imagine the brains of the creatures utilized in theatrical robotics operate based on a stimuli response relationship, but when fine tuning its behavior it is necessary to use diffuse logics as it shows pieces that make the answer and the behavior easier when emulating and simulating life.

It is intended to establish a control that resembles a bit more to human behavior, providing the character with an algorithm that will play the brain’s functions, controlling its eyes, mouth, eyelids, etc.

Key Words: Animatronic, Fuzzy logic, Man-Machine Interaction, Robotic Control, Artificial Intelligence.

INTRODUCCION

La evolución en cuanto a la interacción hombre-máquina ha ido en aumento, no nada más en el hecho de que las máquinas entiendan el problema, accesen a una base de datos y entreguen una respuesta, sino al hecho de que pueden realizar funciones inteligentes al intercambiar información con el entorno.

De igual manera, y siguiendo como modelo al ser humano, la búsqueda de algoritmos y mecanismos que interpreten emociones, actitudes y personalidad de una manera mucho más real serán cada vez más necesarios.

El objetivo principal de esta investigación es la búsqueda de interfaces más amigables para los robots, en cuyas funciones puedan transmitir emociones y reflejen actitudes. Se propondrá además un algoritmo que con base en la lógica difusa nos adecue estados como seriedad, sorpresa y alegría, entre otros.

Palabras clave: Animatronic, Lógica Difusa, Interacción Hombre-Máquina, Control, Robótica e Inteligencia Artificial.

Planteamiento del problema:

Para poder probar los algoritmos es indispensable la construcción de un robot, que en el momento de imprimirle actitud, se convertirá por definición en animatrónic.

Figura 1. Diagrama de algoritmo de actitud

fig1

Al igual que los humanos, esta cara robot, necesita de elementos de entrada y elementos de salida.

Para poder construir una cara robot es necesario dotarla de características similares a las de los humanos, en este caso dotarla de una interfaz con el mundo. Los elementos indispensables para la generación de la actitud son los párpados, los ojos, las cejas, la boca, los labios y el cuello, nuestros elementos de salida. Cada uno de estos elementos es indicador de cierto estado.

Los párpados son los responsables de generar estados como despierto o dormido, así como de generar somnolencia (el estado de tener sueño).

Las cejas son indicadores de enojo, seriedad y sorpresa.

La boca junto con los labios, es generadora de estados tales como felicidad, disgusto y tristeza.


Los ojos nos pueden indicar hacia dónde se está poniendo atención.

El cuello nos indica hacia dónde se dirige la cabeza, dando por resultado evasión, distracción o interés.

De igual modo, la combinación de estos elementos logra acentuar estados de ánimo y actitudes definidas en el animatrónic.

Para definir nuestros elementos de entrada, nos enfocaremos únicamente en los de carácter externo, los producidos por el medio ambiente, en este caso serán intensidad luminosa y nivel de ruido.

Para la construcción de un robot, como ya se mencionó, es necesario utilizar 3 elementos indispensable, que son:

Mecánico, da estructura y movimiento al robot.

Electrónico, distribuye la energía y define los elementos de entrada y el comportamiento de los dispositivos de salida.

Control, conjunto de reglas y comandos que rigen el comportamiento del robot.

De esta manera, al querer simular la interfaz humana, como la cara, comportándose lo más parecido al comportamiento del hombre, resulta más fácil si se maneja con variables como enojo, sorpresa, felicidad, tristeza, seriedad, etc.

DE LO MECÁNICO

Elementos mecánicos

Debido a la necesidad de tener movimientos independientes para cada uno de los elementos de la cara, fue indispensable hacer una buena selección de motores. Estos deberían tener como características, espacio reducido y alto torque, de esta manera se tomó la decisión de utilizar servomotores.

Mecanismo

Un mecanismo, es una estructura interna que hace funcionar algo, en este caso es un conjunto de piezas interconectadas para realizar una tarea específica, con base en sistemas de transmisión como engranes, poleas, etc.

La necesidad de mi propuesta fue llevándome al desarrollo de elementos de transmisión simples para la elaboración de movimientos en los diferentes aspectos de la cara animatrónica, como fue siendo necesario

Mecanismo de cuello

El cuello está desarrollado con base en dos servos futaba 3003, que me proporcionan 2 grados de libertad (x,y), y la combinación entre ellos me proporciona grados de libertad derivados.

 


Figura 2.Diagrama esquemático de funcionamiento de cuello

fig3

Figura 3. Diagrama esquemático de párpados y cejas


Mecanismo de Ojos

fig4

Figura 4. Diagrama esquemático de ojos

fig5

Figura 5. Diagrama esquemático de boca y labios


fig6.

Figura 6. Vista de la cara robot construida

DE LO ELECTRÓNICO

Estructura Básica

En la figura 6, se muestra el diagrama básico de conexiones entre las diferentes partes del sistema electrónico.

Tenemos dos elementos de entrada que son la fotorresistencia y el micrófono. El primero de ellos pasa por un convertidor analógico digital y llega al microcontrolador Basic Stamp II; el segundo, al ser un micrófono, necesita de igual manera convertir la señal analógica a digital, pasando por una computadora, ya que ésta hará el trabajo de la conversión y el procesamiento del algoritmo de control.

Como elementos de salida tenemos 8 servos, el microcontrolador Pic 16C57, de la familia Microchip, alojado en el Basic Stamp II proporciona estos pulsos para su control.

La comunicación que se realiza entre el microcontrolador y la computadora se realiza por el puerto serie compartiendo datos tanto de entrada como de salida.


De esta manera el micro sirve como intérprete de datos externos en el caso de la fotorresistencia y como medio de transporte entre la computadora y los actuadores mecánicos de la cara robot

fig7

Figura 7. Estructura Básica Electrónica

Al observar claramente los distintos tipos de electrónica (como potencia, señales, comunicaciones, etc.) que se emplean para su funcionamiento, los circuitos se diseñaron en tres módulos separados, que se interconectan entre sí para hacer funcionar la cabeza animatrónica, de esta forma tenemos que:

Tabla 1. Descripción de los Módelos

Módulo 1

Fuente de alimentación para todo el animatrónic

(alimentación para sensores, alimentación para servos)

Módulo 2

Circuito con dos entradas.

(circuitos convertidores analógico-digital )

Módulo 3

Circuito de control

(circuito con microcontrolador pic Basic Stamp)

DEL CONTROL

Diseño del controlador por medio de lógica difusa

El control difuso que se diseñó controla las diferentes partes de la cabeza animatrónica, obteniendo con esto diferentes tipos de actitud según sea el estímulo de entrada.

Planteamiento del Problema

Se desea realizar un control de dos entradas (estímulo E1, E2) y una salida o posicionamiento en servos S1 para cada uno de los elementos de la cara robot,


obteniendo, de esta manera, una sumatoria de dichos elementos, como son ojos, párpados, cejas, boca, cuello, etc.

fig8

Figura 8. Diagrama entradas-salidas Tabla 2. Definición de entradas y salidas.

ENTRADAS

SALIDAS

Luz, 64 estados, 6 bits

Párpados, 3 posiciones, (izquierda, centro, derecha)

Ruido Ambiente, 64 estados, 6 bits

Boca, 3 posiciones, (izquierda, centro, derecha)

Cejas, 3 posiciones, (izquierda, centro, derecha)

Ojos, 3 posiciones, (izquierda, centro, derecha)

Movimiento de Cabeza, (cuello 8 posiciones )

Definición de los Conjuntos Difusos Variables Lingüísticas

Se definen 3 variables lingüísticas para cada una de las variables del proceso de entrada.


Entrada E1 Luz

Variable lingüística


Descripción



CL = Cero Luz

L = Luz

ML = Mucha Luz


Nivel cero de iluminación Nivel medio de iluminación Nivel alto de iluminación



Entrada E2 Ruido

Variable lingüística


Descripción


CL = Cero ruido Nivel cero de ruido


L = Ruido

ML = Mucho Ruido


Nivel medio de ruido Nivel alto de ruido


Se definen 3 variables lingüísticas para cada una de las variables de salida.


Salida S1 Párpados Variable lingüística


Descripción



C = Cerrados

M = Medio abiertos

A = Muy abiertos


Los párpados completamente cerrados. Los párpados ligeramente arriba del ojo Los párpados completamente abiertos



Salida S2 Ojos

Variable lingüística


Descripción



I = Izquierda

M = Medio

D = Derecha


Los ojos en dirección izquierda Los ojos en el centro

Los ojos en dirección derecha



Salida S3 Boca

Variable lingüística


Descripción



C = Cerrada

M = Medio abierta

A = Muy abierta


Boca completamente cerrada

Boca en posición media de abertura. Boca completamente abierta



Salida S4 Cejas

Variable lingüística


Descripción



A = Arriba M = Medio B = Bajo


Cejas completamente arriba Cejas en posición media Cejas completamente abajo


Funciones de Pertenencia

fig9

Figura 9. Funciones de pertenencia (entradas E1 y E2 luz y ruido)

En las gráficas de la figura 9 se muestra en el eje de las x, cómo todo se normaliza a uno, en el eje de las y tenemos uno escala del 1 al 64, que es el resultado en digital producto de la conversión a digital, tanto de intensidad luminosa como nivel del ruido.


Figura 10. Funciones de pertenencia (Salidas S1 y S2. Párpados y ojos)

fig11

Figura 11. Funciones de pertenencia (Salidas S3 y S4. Boca y cejas)

De igual manera en las funciones de pertenencia hechas para la salida, en el plano de las y tenemos todo normalizado igual a uno, en el eje de las x tenemos los valores de salida para los servos en grados.


Tabla de reglas


Tabla 3. Reglas para cejas

CEJAS


C L

L

M L

C R

C

M

A

R

M

M

A

M R

M

A

A

Tabla 4. Reglas para ojos

OJOS

C L

L

M L

C R

C

M

A

R

M

M

A

M R

M

A

A


Tabla 5. Reglas para boca

BOCA

C L

L

M L

C R

C

M

A

R

M

M

A

M R

M

A

A

Tabla 6. Reglas para párpados

PÁRPADOS

C L

L

M L

C R

C

M

A

R

M

M

A

M R

M

A

A

Las matrices difusas que se muestran en las tablas 3 a la 6, incluyen las nueve reglas que determinan totalmente la respuesta del controlador para cada una de las entradas.

Procesamiento Difuso y Obtención de la Acción de Control

Como se muestra en la sección anterior, las premisas o condiciones de las reglas, están unidas por una y lógica, es decir, para que una regla se active, se tienen que cumplir ambas condiciones; a su vez, las nueve reglas se relacionan entre si por medio de un O lógica, esto es, que puede activarse una u otra regla o bien otras reglas.

Se calculan previamente los centroides de las funciones de pertenencia definidas para el Flujo, dado que las funciones consideradas son simétricas, el cálculo del centroide se reduce al producto punto entre el vector formado por los 3 centroides y el vector formado por los 3 grados de pertenencias, entre este mismo vector.

C = [C_I C_M C_D]

Donde:

C = Vector de centroides

C_I = Centroide de la función de pertenencia I C_M = Centroide de la función de pertenencia M C_D = Centroide de la función de pertenencia D

Y el vector formado por los grados de pertenencia de los consecuentes activados por las reglas.

GP = [GP_I GP_M GP_D]

De esta manera nos queda que:

CD s1= (C_I xGP_I + C_M x GP_M + C_D x GP_D) / (GP_I +GP_M +GP_D)

Donde CD s1 = centroide difuso servo 1

De igual manera se requiere hacer el mismo procedimiento para cada uno de los servos de la cara, desde S1 (servo 1) hasta S4 (servo 4)

La sumatoria de cada una de estas acciones de control nos darán por resultado un estado de ánimo marcado.


CONCLUSIONES

Este artículo esta enfocado a la investigación y desarrollo de mecanismos y sistemas electrónicos para la fabricación y el control de una cara robot, que al fingir vida entra en lo ya definido como animatrónic.

El objetivo principal de esta tesis es el desarrollar una interfaz mucho más amigable y natural entre el ser humano y las máquinas, siendo este un tema tratado con anterioridad y existiendo caras robot como Gismet, Mexi, Doc y Beardsley, entre otras. Desafortunadamente la información que se puede conseguir al respecto de estos trabajos es poco accesible respecto de la forma de elaboración y los algoritmos empleados, dándonos, por lo tanto, pie al desarrollo de esta investigación y la importancia de desarrollar mecanismos y electrónica de bajo costo para su elaboración.

Explorar el código emotivo a través de la expresión gestual nos permite establecer una relación mucho más natural en términos de comunicación, permitiéndonos entender estados de ánimo. Con ello se afirma la coexistencia entre seres y se logra, por consecuencia, una empatía con las máquinas. El observar que una estructura tiene rasgos similares a los vistos en los seres vivos, más la movilidad que le añadimos, nos produce una sensación de vida, y uno cree que esta interactuando con un ser vivo.

Esta tesis también propone el entender la distancia que existe entre la robótica teatral, utilizada desde ya tiempo atrás por grandes cineastas y parques temáticos, además de lo desarrollado por los centros de investigación, creyendo que la distancia entre ellos será cada vez más corta.

En los primeros capítulos, al plantear los términos de robot y animatrónic nos topamos con la necesidad de clasificar a los robots; teniendo como base algunos libros, consideramos el hecho de que no abarcaban todas las categorías de los robots, dando pie a realizar una tipología propia y tratando de abarcar todos los ámbitos en los que los robots se han desarrollado.

De igual manera fue necesario encontrar un punto de unión para los animatrónics y los robots, proponiendo de esta manera una tipología para títeres o marionetas. La necesidad por construir una máquina capaz de transmitir expresiones con base en una programación definida es el encontrar vínculos entre el estímulo respuesta del pensamiento humano. Entender un poco estos estímulos nos llevó a proponer un algoritmo con base en la lógica difusa, siendo ésta mucho más parecida a la manera de responder de las personas, ya que trabaja con elementos no determinísticos y con una especie de procesamiento en paralelo, permitiéndonos manejar grados de pertenencia.

Al manejar la lógica difusa variables lingüísticas nos acerca mucho más al modelado del comportamiento en base a la comunicación humana ya que nosotros trabajamos con palabras.

En la necesidad de construcción de elementos mecánicos planteados en el capítulo 3, fue necesario utilizar técnicas de construcción de animatrónics para poder resolver los movimientos faciales, dando suavidad a estos movimientos, independientes uno de otro, ya que la robótica teatral permite manejar un gran número de actuadores con un consumo mínimo de energía.

La electrónica propuesta está limitada a responder a dos estímulos externos, propuestos en un principio por una fotorresistencia y un micrófono, midiendo con esto el nivel de ruido exterior y el nivel de luminosidad. Debido a que el nivel de ruido requiere para su medición una etapa de amplificación y una de acople para realizar una buena conversión analógica–digital, fue necesario usar una computadora para el manejo de la señal, simplificando con esto la medición de estímulo respuesta del robot.

La sustitución de este elemento facilitó la realización de la primera aproximación del funcionamiento del algoritmo de control, teniendo como base esta experiencia para trabajos posteriores.

BIBLIOGRAFÍA

Zilouchian, Ali Mo Jamshidi, Intelligent Control Systems using Soft Computing Methodologies, CRC Press LLC, USA, 2000.

Lakhmi C. Jain, N. M. Martin, Fusion of neural networks, fuzzy sets, and Genetic Algorithms Industrial Applications, CRC Press LLC, USA, 2000.

Ollero Baturone, Aníbal, (2001), Robótica, manipuladores y robots móviles, Alfaomega- marcombo, España, 2001.

Cerezo Gabriela, Diseño y Simulación de un Contorlador Difuso, Tesis Profesional, ULSA, México, 1994.

Hamilton, Jake, Efectos especiales en el Cine y la Televisión, Dorlyng Kindersley Limited, Londres, 1998.

Avissai Alcántara Burgute, Estudio de un Control Difuso Hacia la Reducción de Emisiones Contaminantes Automotrices, Tesis Profesional, ULSA, México, 2002.

Revistas

1. Mecánica Popular, año 54 #08, Editorial México, agosto de 2001.

2. Conozca Mas, año 11#05, México, mayo de 2000.

3. Discover en español, vol. 6, núm. 9, septiembre de 2002.

4. Discover en español, vol. 3, núm. 11, noviembre de 1999.

1Trabajo ganador de la Medalla “Hno. Salvador González 2005”, Área Ingeniería y Tecnología, Nivel Licenciatura, Categoría Avanzada, XII Jornadas de Investigación, Universidad La Salle, Abril 2005.