Generación de locomoción de un robot hexápodo usando

Anuncio
cenidet
Centro Nacional de Investigación y Desarrollo Tecnológico
Coordinación de Mecatrónica
TESIS DE MAESTRÍA EN CIENCIAS
“Generación de locomoción de un robot hexápodo
usando dos células neuronales analógicas”
presentado por:
Julio Pérez Machorro
Ing. Mecánico del Instituto Politécnico Nacional
como requisito para obtener el grado de:
Maestría en Ciencias en Ingeniería Mecatrónica
Directores de tesis:
Dr. Luis Gerardo Vela Valdés
Co-Director de tesis:
MC. José Luis González Rubio Sandoval
Cuernavaca, Morelos, México
Mayo del 2009
Página en blanco intencionalmente
ii
Hoja de Aceptación del Documento de Tesis
iii
Página en blanco intencionalmente
iv
Hoja de Autorización de impresión de tesis
v
Página en blanco intencionalmente
vi
Dedicatoria
Doy gracias a Dios por culminar una etapa más en mi vida, dando
Gloria y Honra por su infinita misericordia para mi persona;
le dedico mi trabajo, mi esfuerzo, mi vida.
También dedico este trabajo a
todas aquellas personas que han influido en vida,
de tal manera que han formado una persona feliz en el quehacer de su vida.
vii
Página en blanco intencionalmente
viii
Agradecimientos
Primeramente a mi Dios que me permite culminar un periodo más de mi vida y que siempre ha
estado a mi lado.
A mis padres que nunca me desampararon y siempre me apoyan de una u otra manera.
A mi novia, amigos, compañeros de clase y de trabajo que han hecho poco a poco una persona
más feliz en este planeta.
Gracias a mis asesores Dr. Vela y MC. Rubio por su entusiasmo y compromiso con el trabajo
de tesis.
Gracias a mis revisores de tesis Dr. Oliver y MC. Wilbert los cuales fortalecieron este trabajo
de investigación.
Gracias a la DGEST por su apoyo económico en el transcurso de la maestría.
ix
Página en blanco intencionalmente
x
Contenido
Lista de figuras……………………………………………….……………………….xiii
Lista de símbolos…………………………………………….…………………………xv
Lista de abreviaturas……………………………...……….………………………….xvi
Resumen………………………………………………..…….………………………...xvii
Abstract…………………………………………………….….…………………………xix
Capítulo 1
Antecedentes ............................................................................. 1
1.1 Introducción ........................................................................................ 2
1.1.1 Origen y desarrollo de la Robótica ............................................... 2
1.1.2 Definición y clasificación de Robots ............................................. 2
1.1.3 Robots Hexápodos ........................................................................ 4
1.1.4 Aspectos Biológicos ...................................................................... 7
1.1.5 Control de robots .......................................................................... 7
1.2 Interés, ubicación y planteamiento del problema................................. 9
1.2.1 Interés del problema. .................................................................... 9
1.2.2 Ubicación del problema ................................................................ 9
1.2.3 Planteamiento del problema ....................................................... 10
1.3 Objetivos, metas y alcances ............................................................... 10
1.3.1 Objetivo General......................................................................... 10
1.3.2 Objetivos Específicos. ................................................................. 10
1.3.3 Meta. ........................................................................................... 10
1.3.4 Alcance. ...................................................................................... 10
1.4 Justificación ...................................................................................... 11
1.5 Hipótesis............................................................................................ 11
1.6 Propuesta de solución ....................................................................... 11
1.7 Estado del arte .................................................................................. 13
1.8 Bibliografía ....................................................................................... 14
Capítulo 2
Marco Teórico ........................................................................ 17
2.1 Redes Neuronales Artificiales (RNA) ................................................. 18
2.2 Autómatas Celulares (AC) ................................................................. 20
2.2.1 Espacio de un AC........................................................................ 20
2.2.2 Vecindad ..................................................................................... 21
2.3 Redes Neuronales Celulares (RNC) ................................................... 21
2.3.1 Ecuaciones de una Red Neuronal Celular. .................................. 22
2.3.2 Redes Neuronales Celulares de Una Capa.................................. 22
2.3.3 Redes Neuronales Celulares MultiCapa...................................... 24
2.3.4 Modelos para una Red Neuronal Celular.................................... 25
2.4 Generador Central de Patrones......................................................... 26
2.4.1 Red Neuronal Celular de Reacción-Difusión (RNC-RD) para
generación de Auto-Ondas (AO) .............................................................. 28
xi
2.5 Bibliografía ....................................................................................... 31
Capítulo 3
Caso de Estudio: Robot Hexápodo ......................................... 33
3.1 Introducción ...................................................................................... 34
3.2 GCP para robot Hexápodo. ............................................................... 34
3.2.1 GCP generando Auto-Ondas (RNC) ........................................... 35
3.2.2 Neuronas Generadoras de Movimientos Locales (NGML):
Generador autónomo (Auto-Ondas) ......................................................... 35
3.2.3 Modelo de la RNC para el Robot Hexápodo (Flexor – Extensor) 42
3.2.4 Implementación electrónica de la célula para la RNC ................ 43
3.2.5 Red Neuronal Celular (RNC) para Robot Hexápodo. ................. 45
3.3 Acoplamiento de señales a los sistemas de actuación ....................... 46
3.3.1 Acoplamiento de patrones de movimiento en extremidades. ........ 46
3.3.2 Acoplamiento de señales de la célula a servomotores ................. 51
3.4 Sistema mecánico .............................................................................. 54
3.5 Bibliografía ....................................................................................... 56
Capítulo 4
Resultados............................................................................... 57
4.1 Prueba 1: Estados X1 y X2 de una célula. ......................................... 58
4.2 Prueba 2: Salidas Y1 y Y2 de una célula. .......................................... 60
4.3 Prueba 3: Estado X1 de la célula 1 y estado X1 de la célula 2 sin
conexión de sinapsis .................................................................................... 61
4.4 Prueba 4: Estado X1 de la célula 1 y estado X1 de la célula 2 con
sinapsis inhibitoria tomada de la salida Y1 de la célula 1 ........................... 63
4.5 Prueba 5: Estado X1 de la célula 1 y estado X1 de la célula 2 con
sinapsis inhibitoria variable tomada de la salida Y1 de la célula 1 ............. 64
4.6 Prueba 6: Estado X1 de la célula 1 y estado X1 de la célula 2 con
sinapsis de excitación tomada de la salida Y1 de la célula 1 ....................... 64
4.7 Prueba 7: Estado X1 de la célula 1 y estado X1 de la célula 2 con
sinapsis inhibitoria tomada de la salida Y1 de la célula 1 pero cambiando la
constante de tiempo (RC)............................................................................. 65
4.8 Bibliografía ....................................................................................... 66
Conclusiones........................................................................... 67
Capítulo 5
5.1 Conclusiones ..................................................................................... 68
5.2 Aportaciones...................................................................................... 68
5.3 Trabajos futuros ................................................................................ 69
5.4 Bibliografía ....................................................................................... 70
Capítulo 6
Anexos .................................................................................... 71
6.1 Diagramas Electrónicos .................................................................... 72
6.2 Lista de material Electrónico, Mecánico y costos. ............................. 74
6.3 Planos ............................................................................................... 75
6.4 Hoja de datos .................................................................................... 78
xii
Lista de Figuras
Figura 1. Nomenclatura de las extremidades del robot hexápodo; I=Izquierda, D=Derecha
Figura 2. Tipo de caminar Trípodo (Paso rápido)
Figura 3. Tipo de caminar Tetrápodo (Paso medio)
Figura 4. Tipo de caminar Onda (Paso lento)
Figura 5. Esquema del general
Figura 6. Neurona Biológica
Figura 7. Modelo de neurona artificial
Figura 8. Clasificación de las RNA
Figura 9. Diversos tipos de conexiones para el espacio de un AC, en b) muestra 4 vecinos,
en c) muestra 8 vecinos
Figura 10. Vecindad con r=1 para una célula central (color negro). Las vecinas se distinguen
por encontrarse en color gris.
Figura 11. Red Neuronal Celular de 2 dimensiones M(filas) x N(columnas) de 3x3. Los
recuadros significan las células y las líneas las interconexiones
Figura 12. Vecindad con (a) r=1, (b) r=2
Figura 13. Modelo de una célula
Figura 14. Respuesta de la no linealidad a la salida
Figura 15. Arreglo bidimensional de una RNC
Figura 16. Realización de la ecuación 27 (a) y 28 (b)
Figura 17. Realización de la neurona como generador de auto onda.
Figura 18. Simulación de los estados X1 y X2 de una célula de(27)
Figura 19. Simulación de los salidas Y1 y Y2 de una célula de (28)
Figura 20. Realización de los acoplamientos laplacianos
Figura 21. Realización de un generador de auto onda
Figura 22. RNC de una dimensión (a) Propagación de una auto onda en un anillo
(b)Esquema simplificado del patrón de oscilación.
Figura 23. Conexión motora
Figura 24. Comportamiento de inhibición mostrando desfase de 180º de una célula con
respecto a la otra.
Figura 25. Realización electrónica de una célula de la RNC
Figura 26. Célula implementada electrónicamente
Figura 27. Inhibición de la célula 1 y 2 y viceversa en control en extremidades
Figura 28. Implementación electrónica de la Células y la RNC con el acoplo de la señal a los
sistemas de actuación
Figura 29. Mecanismo de Biela-Manivela-Corredera para la solución a la locomoción de una
extremidad. 1. Eslabón fijo, 2. Biela, 3. Manivela, 4. Corredera.
Figura 30. Funcionamiento del Servomotor.
Figura 31. Extremidad del robot hexápodo mediante servomotores.
Figura 32. Señal a seguir de los servomotores
Figura 33. Gráfica de fase X1, X2 (Continua) y Y1, Y2 (Rayada y punteada) de una sola
célula
Figura 34. Acoplamiento de las señales a una extremidad
Figura 35. Dinámica de Servomotores para 1er grado de libertad
Figura 36. Dinámica de los servomotores para el 2do grado de libertad
xiii
Figura 37. Señal Y1 y Y2 de una célula acoplada para el VCO. (amplificada negativamente y
desfasada)
Figura 38. Esquema general de una extremidad acoplada a una célula
Figura 39. Señal de PWM para la salida Y1 de la célula
Figura 40. Señal PWM para cada salida Y2 de la célula
Figura 41. Proyecto Robot Hexápodo
Figura 42. Servomotor analógico para el control de 1 GDL
Figura 43. Extremidad compuesta por dos servomotores
Figura 44. Estructura terminada del robot hexápodo
Figura 45. Simulación del estado X1 y X2 de una célula
Figura 46. Datos del osciloscopio del estado X1 y X2 de una célula
Figura 47. Simulación de la salida Y1 y Y2 de una célula
Figura 48. Datos del osciloscopio de la salida Y1 y Y2 de una célula
Figura 49. Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2
(10 seg.)
Figura 50. Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2
(10 seg. después)
Figura 51. Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2
(con sinapsis)
Figura 52. Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2
(con sinapsis variable)
Figura 53. Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2
(con sinapsis de excitación)
Figura 54. Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2
(cambio de la constante RC)
Figura 55. Conexiones entre las NGML y las extremidades del robot para realizar (a) paso
rápido, (b) paso medio, (c) paso lento.
Figura 56. Diagrama electrónico de una Célula
Figura 57. Diagrama electrónico para el acoplo de la señal de control al servomotor
Figura 58. Plano del sistema completo del Robot Hexápodo
Figura 59. Plano de la base principal del robot hexápodo
Figura 60. Plano del servomotor
Figura 61. Plano de una pata
Figura 62. Amplificador operacional LM324 utilizado en la célula
Figura 63. Generador de Ancho de Pulsos controlado por voltaje
Figura 64. Opto-acoplador para aislar la señal del servomotor
xiv
Lista de símbolos
D1
D2
D3
I1
I2
I3
xi
wij
θj
φ
t
M
N
i
j
C(i,j)
Nr(i,j)
C(k,l)
xij
yij
uij
A
B
iij
Vxij
Vuij
Vyij
Eij
Iij
C
Rx
I αs
Extremidad uno derecha.
Extremidad dos derecha.
Extremidad tres derecha.
Extremidad uno izquierda.
Extremidad dos izquierda.
Extremidad tres izquierda.
Entrada i-ésima de una neurona.
El peso o densidad j-ésima de la neurona.
Valor del umbral.
Función de activación de la neurona.
Variable de tiempo.
Número de filas de una red neuronal celular.
Número de columnas de una red neuronal celular.
Renglón en una red celular.
Columna en una red celular.
Célula i,j-ésima.
Radio de vecindad.
Célula k,l-ésima.
Variable de estado de la célula.
Salida de la célula.
Entrada de la célula.
Plantilla de retroalimentación.
Plantilla de control.
Bías (umbral de la red celular).
Voltaje de la variable de estado de C(i,j).
Voltaje de entrada de C(i,j).
Voltaje de salida de C(i,j).
Fuente de voltaje independiente.
Fuente de corriente independiente.
Capacitor lineal.
Resistencias lineales.
Ley sináptica de la RNC.
β
Suma de contribuciones de cada célula de r-vecindario nα + β .
Coeficiente de difusión.
Operador Laplaciano en ℜ 2 .
D
∇ 2 ui
µ , ε , s1 , s2 Parámetros de la Red Neuronal Celular de Reacción-Difusión para la generación
de Auto-Ondas.
Conexión sináptica de dos o más células.
ξ
Bn
Bloque n.
X1
Estado de la célula uno.
X2
Estado de la célula dos.
Y1
Estado de la célula uno.
Y2
Estado de la célula dos.
xv
Abreviaturas
(RIA)
(IFR)
(GCP)
(RNA)
(AC)
(NC)
(NGML)
(EDP)
(RNC-RD)
(AO)
(SNC)
(PWM)
(VCO)
xvi
Asociación de Industrias Robóticas
Federación Internacional de Robótica
Generador Central de Patrones
Redes Neuronales Artificiales
Autómatas Celulares
Neuronas Comando
Neuronas Generadoras de Movimientos Locales
Ecuaciones Diferenciales Parciales
RNC de reacción-difusión
Auto-Ondas
Sistema Nervioso Central
Modulador de Ancho de Pulsos
Oscilador Controlado por Voltaje
Resumen
Las criaturas vivientes muestran distintas capacidades de adaptación para interactuar con su
entorno. Estas características encuentran sus raíces en la dinámica de la auto-organización de
los circuitos neuronales, lo que en la teoría no lineal representan el mayor ejemplo de
comportamiento del sistema emergente. En este trabajo el control de locomoción bio-inspirado
se realiza por medio de arreglos de sistemas no lineales acoplados localmente (redes neuronales
celulares). El punto principal de este enfoque es que los osciladores no lineales son una
alternativa no sólo para el modelo de principios que subyacen a las estructuras neuronales
dedicados al control de la locomoción de los seres vivos, sino que se pueden implementar en la
práctica para construir robots autónomos. En este contexto los conceptos de auto-organización
y sincronización, los paradigmas universales de la ciencia y las leyes del mundo real,
desempeñan un papel fundamental en el emergente complejo del comportamiento de la red de
circuitos no lineales.
xvii
Página en blanco intencionalmente
xviii
Abstract
Living creatures show distinct abilities to adaptively interact with their environment. These
characteristics find their roots in the self-organizing dynamics of neural circuits, in which
nonlinear theory represents the highest example of emergent systems behavior. In this work,
bio-inspired locomotion control is achieved by means of locally coupled nonlinear system
arrays (Cellular Neural Networks). The main point of the approach is that nonlinear oscillators
are an efficient way, not only to model the principles underlying neural structures devoted to
locomotion control in living creatures, but more importantly, to implement them to build
autonomous walking robots. In this context the concepts of self-organization, synchronization,
universal paradigms of science and real world laws play a fundamental role in the emerging
complex behavior of nonlinear circuit networks.
xix
Página en blanco intencionalmente
xx
Capítulo 1
Antecedentes
Capítulo I
cenidet
1.1 Introducción
1.1.1 Origen y desarrollo de la Robótica
A lo largo de la historia, el hombre se ha sentido fascinado por las máquinas y dispositivos
capaces de igualar las funciones y los movimientos de los seres vivos. Los griegos tenían una
palabra específica para denominar a estas máquinas: automatos. De esta palabra deriva la actual
autómata: máquina que imita la figura y movimientos de un ser animado [1][2].
La palabra robot fue usada por primera vez en el año 1921, cuando el escritor checo Karen
Capek (1890-1938) estrena en el teatro nacional de Praga su obra Rossum’s Universal Robot.
Su origen es la palabra eslava robota, que se refiere al trabajo realizado de manera forzada.
Estos servían a sus jefes humanos desarrollando todos los trabajos físicos, [2][3].
1.1.2 Definición y clasificación de Robots
La definición más comúnmente aceptada es la de la Asociación de Industrias Robóticas (RIA),
según la cual:
• Un robot industrial es un manipulador multifuncional reprogramable, capaz de mover
materiales, piezas, herramientas o dispositivos especiales, según trayectorias variables,
programadas para realizar tareas diversas.
La Federación Internacional de Robótica (IFR) distingue entre robot industrial de
manipulación y otros robots:
•
Por robot industrial de manipulación se entiende a una máquina de manipulación
automática, reprogramable y multifuncional con tres o más ejes que pueden posicionar y
orientar materiales, piezas, herramientas o dispositivos especiales para la ejecución de
trabajos diversos en las diferentes etapas de la producción industrial, ya sea en la
posición fija o en movimiento.
La IFR distingue cuatro tipos de robots:
•
•
•
•
Robot Secuencial
Robot de trayectoria controlable
Robot adaptativo
Robot telemanipulado
Existen también algunas clasificaciones, por ejemplo por su nivel de inteligencia:
•
•
•
•
2
Dispositivos de manejo manual, controlados por una persona.
Robots de secuencia arreglada.
Robots de secuencia variable, donde un operador puede modificar la secuencia
fácilmente.
Robots regeneradores, donde el operador humano conduce el robot a través de la tarea.
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
•
•
Robots de control numérico, donde el operador alimenta la programación del
movimiento, hasta que se enseñe manualmente la tarea.
Robots inteligentes, los cuales pueden entender e interactuar con cambios en el medio
ambiente.
Los programas en el controlador del robot pueden ser agrupados de acuerdo a su nivel de
control.
•
•
•
Nivel de inteligencia artificial, donde el programa aceptará un comando como "levantar
el producto" y descomponerlo dentro de una secuencia de comandos de bajo nivel
basados en un modelo estratégico de las tareas.
Nivel de modo de control, donde los movimientos del sistema son modelados, para lo
que se incluye la interacción dinámica entre los diferentes mecanismos, trayectorias
planeadas, y los puntos de asignación seleccionados.
Niveles de servo sistemas, donde los sistemas de actuación controlan los parámetros de
los mecanismos con el uso de una retroalimentación interna de los datos obtenidos por
los sensores, y la ruta es modificada sobre la base de los datos que se obtienen de
sensores externos. Todas las detecciones de fallas y mecanismos de corrección son
implementadas en este nivel.
Los sistemas de programación se ubican dentro de tres clases:
•
•
•
Sistemas guiados, en los cuales el usuario conduce al robot a través de los movimientos
a ser realizados.
Sistemas de programación de nivel-robot, en los cuales el usuario escribe un programa
de computadora al especificar el movimiento y la acción de sensor.
Sistemas de programación de nivel-tarea, en los cuales el usuario especifica la
operación por sus acciones sobre los objetos que el robot manipula.
Actualmente hay varias formas de clasificar a los robots, pero se analizarán a los robots según
las siguientes características:
•
•
•
•
Androides: Los androides son robots que se asemejan y actúan como los seres humanos.
Actualmente, los androides reales solo existen en la imaginación y en las películas de
ficción.
Móviles: Los robots móviles están provistos de patas y ruedas que los capacitan para
desplazarse de acuerdo a su programación. Elaboran la información que reciben a través
de sus propios sistemas de sensores y se emplean en determinado tipo de instalaciones
industriales, sobre todo para el transporte de mercancías en cadenas de producción y
almacenes. También se utilizan en investigación.
Zoomórficos: Robots caracterizados principalmente por su sistema de locomoción que
imita a diversos seres vivos. Los androides pueden ser considerados robots zoomórficos.
Médicos: Los robots médicos son, fundamentalmente, prótesis para disminuidos físicos
que se adaptan al cuerpo y están dotados de potentes sistemas de mando. Con ellos se
logra suplir las extremidades o incluso órganos de los seres humanos.
3
Capítulo I
•
•
cenidet
Industriales: Los robots industriales son artilugios mecánicos y electrónicos destinados
a realizar de forma automática determinados procesos de fabricación o manipulación.
Otros:
o Teleoperadores: pueden clasificarse o no como robots. Se controlan
remotamente por un operador humano. Son muy sofisticados y se utilizan en
desactivación de bombas.
o Híbridos: corresponden a aquellos de difícil clasificación cuya estructura es una
combinación de las anteriores.
Existe otra clasificación la cual enlista a los robots por su generación:
•
•
•
•
•
Robots de 1º Generación: El sistema de control usado en la primera generación de
robots está basado en la “paradas fijas” mecánicamente. Como ejemplo de esta primera
etapa están los mecanismos de relojería que mueven las cajas musicales o los juguetes
de cuerda.
Robots de 2º Generación: El movimiento se controla a través de una secuencia numérica
almacenada en disco o cinta magnética. Normalmente, este tipo de robots se utiliza en la
industria automotriz y son de gran tamaño.
Robots de 3º Generación: Utilizan las computadoras para su control y tienen cierta
percepción de su entorno a través del uso de sensores. Con esta generación se inicia la
era de los robots inteligentes y aparecen los lenguajes de programación para escribir los
programas de control.
Robots de 4º Generación: Se trata de robots altamente inteligentes con más y mejores
extensiones sensoriales para entender sus acciones y captar el mundo que los rodea.
Incorporan conceptos “modélicos” de conducta.
Robots de 5º Generación: Actualmente se encuentran en desarrollo. Esta nueva
generación de robots basará su acción principalmente en modelos conductuales
establecidos. [4]
1.1.3 Robots Hexápodos
Un robot hexápodo es aquel que tiene seis extremidades o patas y son las que le sirven de
apoyo para la generación del caminar. Estos tipos de robots muestran ventajas en comparación
con el robot de ruedas, ya que pueden acceder a terrenos con pequeños obstáculos, para lo cual
un robot con ruedas tendría que realizar un mayor esfuerzo o simplemente no poder acceder a
tal lugar.
Dentro de los robots caminantes o con extremidades, el robot hexápodo muestra la
característica de ser estable; es decir que con las seis extremidades con que cuenta fácilmente
tiene buen apoyo sobre el terreno, de esta forma al activarse una extremidad las cinco, cuatro o
tres patas restantes pueden dar sustento físico al robot; lo que significa que el robot hexápodo
da ventajas en comparación con los bípedos y los cuadrúpedos al tener más puntos de apoyo y
dar buen soporte al momento de generarse el caminar. [5]
4
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
En cuestión a los robots hexápodos se pueden clasificar de acuerdo:
• Al número de grados de libertad por extremidad o por el total de grados de libertad.
• Al tipo de caminar.
En la actualidad pueden existir robots de dos, tres o más grados de libertad por extremidad; esto
presentaría un problema especial para cada extremidad, generar el patrón de locomoción que
será de señal de control a los sistemas de actuación, y de esta misma manera para las restantes
cinco extremidades. En el presente trabajo se muestra que se pueden generar patrones de
locomoción que sirven de señal de control a las extremidades.
Figura 1.
Nomenclatura de las extremidades del robot hexápodo; I=Izquierda, D=Derecha
Referente al modo de caminar existen varios tipos, los cuales se mencionan a continuación:
•
Trípodo. (Paso rápido Figura 2) Se mueven simultáneamente las extremidades I1, D2, e
I3 durante un lapso de tiempo (ya sea hacia adelate o hacia atrás, Figura 1) en el aire,
área de negro; mientras que las extremidades D1, I2 y D3 permanecen en contacto con
el suelo teniendo un movimiento contrario a las anteriores (ya sea hacia delante o hacia
atrás respectivamente), área de blanco.
Tiempo de
con el suelo
Tiempo
completo
del
contacto
Tiempo estando en el
aire
paso
Figura 2.
Tipo de caminar Trípodo (Paso rápido)
5
Capítulo I
•
cenidet
Tetrápodo. (Paso medio Figura 3) En este modo se mueven por parejas de
extremidades. Esto es que I1 y D3 se mueven (ya sea hacia adelate o hacia atrás) en el
aire, área de negro, mientras que el resto permanece en el suelo. Dentro del lapso que
dura su ciclo entra en acción la extremidad D2 de igual forma que en el anterior. Y por
último las extremidades I3 y D1 hacen la misma acción que las anteriores pero durante
su ciclo de trabajo.
Tiempo de contacto
con el suelo
Tiempo estando en
el aire
Tiempo del paso
completo
Figura 3.
•
Tipo de caminar Tetrápodo (Paso medio)
Onda. (Paso lento Figura 4) En este tipo de caminar las extremidades son
independientes, cada una durante un lapso de tiempo (ya sea hacia adelate o hacia atrás)
y continúa la extremidad contigua.
Tiempo de contacto
con el suelo
Tiempo estando en el
aire
Tiempo del paso
completo
Figura 4.
6
Tipo de caminar Onda (Paso lento)
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Existen otros tipos de caminar dependiendo del ser vivo de quien se refiera, los mostrados
representan a insectos como las hormigas. Los mamíferos muestran diferente forma de caminar
y éstos se adaptan al medio que les rodea.
1.1.4 Aspectos Biológicos
Actualmente, los biólogos asumen que el sistema nervioso animal contiene un conjunto de
células especializadas llamado Generador Central de Patrones (GCP), más aún, existe una gran
variedad de GCP, cada uno orientado a una acción específica. El GCP locomotor, que controla
el ritmo de andar (tipos de caminar) en mamíferos, ha cobrado una gran relevancia en los
estudios Biomatemáticos y aplicaciones en Bioingeniería con la aparición de los GCP
artificiales en robótica.
El análisis de andares de animales es una ciencia antigua, ya Aristóteles describe el caminar de
un caballo en su tratado De Incessu Animalium [6]. Desde aquella época hasta la actual se
avanzó sobre varios paradigmas. Un enfoque moderno representa al andar como patrones
cíclicos generados por un arreglo de osciladores no lineales acoplados.
Una definición más precisa del GCP se enuncia: Hipotético circuito neuronal complejo situado
en el sistema nervioso central y que contiene una serie de órdenes que, al activarse, producen
una secuencia de movimientos coordinados. Se cree que rige las acciones motoras rápidas y las
acciones determinadas genéticamente. Es capaz de producir un ritmo u oscilación en los
impulsos nerviosos de las motoneuronas 1 a los distintos músculos implicados en un patrón de
movimiento. Los experimentos medulares con gatos han llegado a la conclusión de que este
eferente oscilatorio activa primero las motoneruonas de los músculos flexores de la pierna y
luego activa los extensores, luego los flexores otra vez, siguiendo un patrón parecido al
desplegado durante la locomoción. [7]
Actualmente, los biólogos asumen que el sistema nervioso animal contiene una variedad de
GCP, cada uno orientado a una acción específica. Por ejemplo el GCP locomotor controla el
ritmo de andar en mamíferos [8]. Un modelo matemático simplificado de GCP locomotor
consiste en suponer la existencia de cuatro celdas acopladas con un oscilador periódico no
lineal en cada celda [9][10]. Bajo este punto de vista el andar de cuadrúpedos fue estudiado por
varios investigadores que utilizaron distintos métodos, como son: la teoría equivariante de
bifurcaciones [10], simulaciones numéricas [11] y curvas de respuesta de fase [12].
1.1.5 Control de robots
En la actualidad existen muchos tipos de control para robots hexápodos, pudiendo ser de forma
continua o discreta; lineal, no lineal, condicional o secuencial.
Recientemente, la comunidad científica y técnica se ha interesado en las ciencias de la vida, en
particular la biología y la neurobiología, desde que se tienen retos como la generación y control
1
La motoneuronas se encargan de generar y transmitir los impulsos nerviosos que provocan la contracción
muscular.
7
Capítulo I
cenidet
de la locomoción en robots caminantes que requieren un esfuerzo computacional alto, tanto en
el diseño como en la implementación. De hecho se necesita de una generación y coordinación
de trayectorias para todas las uniones de las extremidades del robot; convirtiéndose en un reto
cuando el numero de extremidades aumenta.
El más simple de los insectos muestra diferentes tipos de locomoción aún sin existir un cerebro.
La continua retroalimentación entre neurobiología y la ingeniería ha generado una gran sinergia
y se ha puesto una gran atención en encontrar eficientes algoritmos para la generación de
locomoción autónoma.
El GCP es un sistema complejo compuesto por subredes de neuronas, que son capaces de
generar patrones motores rítmicos y proveer tiempos para cada tipo de locomoción. Los GCP
son grandemente utilizados en control de locomoción para robots (bípedo, cuadrúpedos,
hexápodos, etc). Para robots que usan GCP, el control motor no es visto como un problema de
control, el cual es consecuencia de acciones algorítmicas organizadas. En lugar de lo anterior es
un flujo continuo de señales análogas manejadas por leyes de difusión 2. Las ventajas del GCP
son:
•
•
El promedio de cálculos requeridos para el control motor es reducido por el resultado de
la coordinación de partes físicas inducidas por los movimientos rítmicos.
La flexibilidad sináptica la cual cambia la configuración del GCP y el ritmo de
patrones, para una adaptación autónoma en varios ambientes en que se encuentre.
Muchos de los modelos y métodos para realizar el GCP han sido implementados por algoritmos
en procesos digitales. Algunos son utilizados por las Redes Neuronales Artificiales (RNA) por
ejemplo la Red Hopfield. Las RNA son una poderosa arquitectura para modelar fenómenos
complejos y no lineales por su capacidad de aprender a base de ejemplos. Por otra parte, hay
muchas desventajas en términos de la realización electrónica. La masiva conectividad entre las
células, la cual requiere muchas conexiones físicas para su realización para propósito general.
Los modelos de GCP usualmente consisten en ecuaciones diferenciales, Runge-Kutta ha podido
ser usado para resolverlos. Esto debe ser resuelto por procesos digitales. Aunque un proceso
digital puede operar con alta velocidad y exactitud, este consume gran parte de memoria para el
proceso y una gran área del chip.
La realización de Circuitos analógicos para GCP son más atractivos e interesantes, ya que
tienen grandes ventajas sobre las implementaciones digitales y en la simulación con software.
De hecho las ultimas dos soluciones pierden su eficiencia cuando el número de neuronas
aumenta. Las implementaciones análogas no sufren de tal dificultad, cuando el número de
neuronas aumenta solamente el número de células o neuronas tiene que ser incrementado.
Ningún poder computacional extra se necesita. [13]
2
Los modelos de reacción-difusión son utilizados para comprender la transmisión de ondas neuronales al corazón,
el crecimiento de tumores cerebrales y la aparición de patrones ecológicos y bacterianos, entre otras. Los sistemas
de reacción-difusión muestran una variedad impresionante de patrones, desde los sencillos listados hasta patrones
espirales, pasando por patrones periódicos de diferentes simetrías. Así mismo, dependiendo de los parámetros del
problema, los patrones pueden ser estáticos o dinámicos.
8
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
1.2 Interés, ubicación y planteamiento del problema
1.2.1 Interés del problema.
En el preámbulo presentado en anteriores subtemas, se muestra un panorama de la situación
con la que se enfrenta este trabajo de investigación. Se mencionan aspectos importantes como
robots hexápodos, el control de los robots y el aspecto biológico como inspiración para la
solución de problemas a la locomoción.
De esta manera el interés del problema se enfoca primero a la realización de robots caminantes,
especialmente hablando de robots hexápodos, que permiten un traslado de movimiento de ellos
en un medio ambiente en el cual un robot con ruedas difícilmente podría acceder. Estos robots
hexápodos resultan interesantes al momento en que se comparan con sus compañeros bípedos,
cuadrúpedos, etc. al presentar una arquitectura física estable.
Lo anterior representa un interés al desarrollar un robot de tipo hexápodo que emule estas
características.
El segundo enfoque señalado es la situación del control de robots. Primeramente resaltar que
como un trabajo de investigación a nivel maestría el presente trabajo queda dentro del interés
primordial de la investigación, el cual se basa en la generación de locomoción de un robot
hexápodo para controlar o dirigir las extremidades del mismo usando RNC.
Existen dos puntos de vista en cuestión al control del robot hexápodo: uno se refiere al control
del robot para realizar diferentes actividades, como por ejemplo el caminar, trotar, girar,
detenerse, librar obstáculos, etc; el otro aspecto se refiere a la generación de locomoción para el
control de las extremidades, esto es, generar un patrón oscilatorio que pueda realizar el
movimiento a los sistemas finales de actuación. El trabajo de investigación se enfoca a esta
segunda parte, la cual se especifica con un tipo de caminar rápido o tipo trípodo.
El interés primordial es la generación de la locomoción por medio de patrones de oscilación.
Y un tercer enfoque para este tipo de paradigma de control radica en la inspiración biológica en
la solución del control de robots caminantes para la generación de su locomoción. [14][15]
1.2.2 Ubicación del problema
Tomando como referencia los aspectos mencionados en el subtema anterior se recapitulan dos
cuestiones en cuanto a la ubicación del problema, los cuales se enuncian a continuación:
•
•
La generación de patrones de oscilación que controlen a las extremidades de un robot
hexápodo a base de RNC como alternativa de control en robots caminantes, y
La realización de un robot hexápodo que permita la utilización de este tipo de
alternativas de control, capaz de asemejar a los movimientos de un ser vivo de esta
naturaleza.
Principalmente este trabajo de investigación se enfoca a las dos cuestiones anteriores que
ubican el problema en la realización de sistemas, uno mecánico-eléctrico que cumpla con la
estructura del robot y otro electrónico que supla con las necesidades del control y a delimitarse
en los objetivos y metas.
9
Capítulo I
cenidet
1.2.3 Planteamiento del problema
Al retomar pasados párrafos se encuentra que el problema principal radica en la construcción
de un circuito electrónico que modele a un Generador Central de Patrones, que a su vez
controle el manejo de las extremidades del robot hexápodo. Con base en ello el problema se
concretiza en la construcción de un circuito electrónico que sirva de GCP que a su vez genere
los patrones de oscilación y, la construcción de un robot hexápodo que pueda emular los
movimientos de un insecto que permita la aceptación del GCP y la correcta actuación del
mismo sobre las extremidades del robot.
Básicamente la investigación es el desarrollo del circuito electrónico y su sistema de
implementación, en este caso el robot hexápodo.
1.3 Objetivos, metas y alcances
Los objetivos, metas y alcances planteados se delimitan con base a estudios del problema y a la
situación actual dentro del centro de investigaciones. [14]
1.3.1 Objetivo General.
“Generar locomoción en un robot hexápodo usando redes neuronales celulares”
1.3.2 Objetivos Específicos.
“Diseñar y construir una red neuronal analógica que permita generar patrones de oscilación y
su implementación en un robot hexápodo para su locomoción, emulando el movimiento de
algunos seres vivos”
“Diseñar y construir un robot hexápodo que pueda emular el caminar de algunos seres vivos,
basados en el control con redes neuronales analógicas”
1.3.3 Meta.
La meta planteada en el presente trabajo de investigación es lograr la generación de locomoción
en un robot hexápodo usando Redes Neuronales Celulares para la obtención de un tipo de
caminar determinado. En el subtema 1.1.3. se plantean diferentes tipos de caminar, de los
cuales la meta es generar uno de ellos, siendo el de caminar rápido o trípodo mostrado en la
Figura 2 la cual explica las fases del movimiento.
1.3.4 Alcance.
El alcance de este trabajo se enmarca dentro de los conceptos de las redes neuronales
analógicas. Esto es, la realización de un circuito mínimo (RCN mínima) que pueda desempeñar
el rol del Generador Central de Patrones (GCP). Radicando en que la red solo servirá para
poder generar oscilaciones que controlen las extremidades del robot; permitiendo sólo la
generación de un tipo de caminar, en nuestro caso de tipo trípodo.
10
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Básicamente el circuito será capaz de generar el tipo de caminar trípodo, no se contempla algún
otro movimiento como el tipo de caminar lento o medio, tampoco librar obstáculos o girar para
tomar otro rumbo. Todos los aspectos anteriores podrán ser retomados en trabajos futuros que
permitan la reorganización de la RNC o la construcción de más RNC.
Otro alcance es la construcción del robot hexápodo, que no tendrá que ser una representación
fiel de algún ser vivo. El objetivo es que el robot permita recibir la señal de control (GCP) y
que la interprete para la generación de locomoción. Para este trabajo se delimitan dos grados de
libertad por cada extremidad. Los cálculos necesarios para la construcción del robot serán
mínimos, esto es, no se presentarán desarrollos matemáticos amplios que justifiquen la
utilización de ciertos elementos físicos a utilizar, sólo se realizarán pequeños diseños con base
en robots existentes funcionales que puedan ser construidos.
De esta manera los alcances principales son la generación de un tipo de caminar utilizando un
circuito de RNC que haga el rol de GCP y un robot que pueda controlar sus extremidades
mediante las RNC. [14]
1.4 Justificación
Este trabajo se justifica desde el momento que se plantea un método de control de extremidades
de robots caminantes a base de RNC inspiradas en la biología por el paradigma existente del
GCP en los seres vivos.
Así mismo la construcción de un robot hexápodo lleva a concretar las metodologías planteadas
en la investigación, llevando a la práctica y a la realización física de los objetivos. El simple
hecho de llevar a la práctica objetivos planteados resulta una justificación del trabajo de
investigación que dará un resultado de utilidad. [14]
1.5 Hipótesis
“La generación de movimiento en una extremidad del robot puede ser implementada
mediante un arreglo de circuitos electrónicos analógicos como las Redes Neuronales
Celulares” [14]
1.6 Propuesta de solución
La generación de locomoción con diferentes tipos de caminar se plantea en [16], [17], [18],
[19] en donde demuestran que las RNC funcionan en robots hexápodos. Esta información sirve
de base para resolver el problema planteado en este trabajo de investigación.
Tomando los dos puntos principales planteados en la ubicación del problema podemos decir
que para resolver:
•
La generación de patrones de oscilación que controlen a las extremidades de un robot
hexápodo a base de RNC como alternativa de control en robots caminantes
11
Capítulo I
cenidet
se basará en modelos existentes en la biología como el Generador Central de Patrones, para lo
cual se propone un sistema electrónico que lo modele. Básicamente nos referimos a que se
diseña un circuito electrónico que realice la función de GCP utilizando las características de las
RNC. En la Figura 5 se muestra una representación general del trabajo de investigación a
realizar.
Figura 5.
Esquema del general
De aquí podemos deducir que el GCP al cual se enfoca el trabajo, estará realizado a base de
RNC que modelarán las ecuaciones del GCP como por ejemplo las ecuaciones de ReacciónDifusión vistas en la biología. [20]
De la Figura 5 se puede enfatizar que el objetivo principal de esta investigación radica en la
realización de un GCP, la retroalimentación de los reflejos a éste no se contempla en este
trabajo, tampoco el bloque del Sistema Nervioso Central.
Para la realización de los circuitos que modelen las RNC, como se había mencionado
anteriormente, se utilizan circuitos analógicos a base de Amplificadores Operacionales que en
su arreglo de sumadores (principalmente) servirán como elementos primordiales para el
modelado de las ecuaciones. [14][15]
Así, la propuesta de solución es la utilización de amplificadores operacionales que modelen las
ecuaciones de la RNC que harán la función de un GCP.
En la segunda parte de la ubicación del problema tenemos que:
•
12
La realización de un robot hexápodo que permita la utilización del tipo de alternativas
de control, capaz de asemejar a los movimientos de un ser vivo de esta naturaleza.
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Con los objetivos planteados anteriormente se diseñará un sistema mecánico que pueda
solamente suplir las necesidades del proyecto, que son un diseño que asemeje los movimientos
de algunos hexápodos. Esto nos lleva a la construcción de un robot que no implique elementos
de alto costo ni materiales que permitan una manufactura compleja.
Para ello solo se diseña la estructura física del robot a base de polímeros que permitan su fácil
moldeado para la realización de las piezas necesarias. Para este trabajo se omitirán cálculos
para la justificación de ciertos materiales como por ejemplo cálculos de estática, dinámica o de
resistencia de materiales. Para la realización de las extremidades se proponen sistemas
servomecánicos3 que resuelven parcialmente el problema de la ubicación de las extremidades.
Estos servomecanismos utilizados en radio control son motores que llevan en sí un sistema de
control de posición que ayudará a que la señal generada por la RNC sirva de señal de referencia
y el servomotor se encargará de seguirla con su sistema de control interno. De tal manera el
robot tendrá la función de seguidor de señal generada por la RNC.
Más adelante se menciona la metodología a desarrollar para la ubicación de estos servomotores
ya que solo pueden posicionarse en un rango de 0º a 180º esto arroja que para realizar el
movimiento de una extremidad serán necesarios dos de los sistemas de actuación rotacional.
[15][21]
1.7 Estado del arte
Se enuncian a continuación los trabajos realizados en relación a las Redes Neuronales
Celulares 4 (RNC) y a los robots Hexápodos. El estado del arte de las RNC es amplio, cabe
señalar que fueron realizadas con miras a la visión artificial. Se pueden enunciar múltiples
trabajos con base a ellos como en [22] que utiliza las RNC para la aplicación de procesamiento
de imágenes. Dentro de esta rama se pueden enunciar libros realizados por Leon O. Chua y
Tomás Roska en [23] el cual desarrolla todo un proceso de las RNC aplicadas a la visión
artificial.
Una de las más prometedoras aplicaciones de las RNC es la aplicación de estas para resolver
ecuaciones diferenciales parciales que sigue siendo investigado.
De manera que se pueden enunciar muchos proyectos expuestos por investigadores que
encaminan sus trabajos a los sistemas de visión así como la generación de ondas no lineales,
patrones y caos espacio-temporales en arreglos dinámicos. [24]
Con respecto a los robots hexápodos se pueden enunciar múltiples trabajos realizados y sería
demasiado presentar algo de ellos. En vez de esto se enuncia el estado del arte de los robots
realizados que han sido controlados por RNC.
3
Conocido generalmente como servo o servo de modelismo, es un dispositivo de actuación que tiene la capacidad
de ubicarse en cualquier posición dentro de su rango de operación, y de mantenerse estable en dicha posición. Está
formado por un motor de corriente continua, una caja reductora y un circuito de control, y su margen de
funcionamiento generalmente es de menos de una vuelta completa.
4
Se basa en los principios de la lógica celular y se ha dedicado de forma prioritaria al procesamiento analógico y
digital de imágenes en distintas ramas, como procesamiento morfológico, filtrado espacial, filtrado en frecuencia y
análisis temporal (movimiento) de imágenes.
13
Capítulo I
cenidet
Dentro de ellos se puede mencionar en [17] la construcción de un robot hexápodo usando RNC
como GCP así como en [19] y en [18], en [13] se enuncia una metodología de uso de las RNC
también como GCP pero enfocado en cuadrúpedos. Existen también múltiples trabajos en [25]
y [26] que desarrollan robots hexápodos inspirados biológicamente.
1.8 Bibliografía
[1] John J. Craig “Robótica” Editorial Pearson, 3era Edición 2006
[2] M. W. Spong, S. Hutchinson, M. Vidyasagar, Robot “Modeling and Control”
Editorial Wiley, 1era Edición Noviembre 2005
[3] Antonio Barrientos, Luís Felipe Peñín, Carlos Balaguer, Rafael Aracil, “Fundamentos
de Robótica. Universidad Politécnica de Madrid” Edit. McGraw Hill 1997
[4] http://www.educa.madrid.org/web/ies.alpajes.aranjuez/ Web_robotica/tiposrobots.htm,
Agosto 2008
[5] http://www.tarry.de/index_us.html Agosto 2008
[6]A. Peek and E. Foster. Parts of Animals, Movements of Animals, Progression of
Animals. Harvard University Press, 1936.
[7] Michael Kent Diccionario Oxford de Medicina y Ciencias del Deporte Paidotribo
[8] A. Dagg. Gaits in mammals. Mammal Rev., 3, 1973.
[9] L. Glass and R. Young. Structure and dynamics of neuronal network oscillator. Brain
Res. 1979.
[10] J. Collins and I. Stewart. Coupled nonlinear oscillators and the symmetries of animal
gaits. J. Nonlin. Sci., 1993.
[11] R. Alexander and J. Goldspink. Mechanics and Energetics of Animal Locomotion.
Chapman and Hall, 1977.
[12] C. Butera C. Canvier and J. Byrne. Phase response characteristics of model neurons
determine which patters are expressed in a ring circuit model of gait generation. Biol.
Cybern. 1997.
[13] Dongrui Wu, Woei Wan Tan and Parlad Vadakkepat “A comparation of several
hardware-Realized Central Pattern Generators (CPG)” Nacional University of Singapore
[14] J. Pérez “Propuesta de tesis: Control de un robot hexápodo usando 6 celdas
neuronales analógicas” CENIDET 2007
[15] J. Pérez “Primer avance de tesis: Control de un robot hexápodo usando 6 celdas
neuronales analógicas” CENIDET 2008
[16] L. Fortuna, P. Arena, D. Bálya “Cellular Neural Networks: A Paradigm for
Nonlinear Spatio-Temporal Processing” IEEE 2001.
[17] P. Arena, L. Fortuna “Analog Cellular Locomotion Control of Hexapod Robots”
IEEE Control System Magazine 2002.
[18] K. Maneesilp, B. Purahong, P. Sooraksa “A New Analog Control Circuit Design for
Hexapod using Cellular Neural Network” IEEE The 30th Annual Conference 2004.
[19] M. Frasca, P. Arena, L. Fortuna, “Bio-Inspired Emergent Control of Locomotion
Systems” World Scientific Series, Nonlinear Science Series A Vol. 48.
[20] P. Arena, L. Fortuna, M. Branciforte, “Reaction-Diffusion CNN Algorithms to
Generate an Control Artificial Locomotion” IEE Circuits and Systems 1 1999.
[21] J. Pérez “Segundo avance de tesis: Control de un robot hexápodo usando 6 celdas
neuronales analógicas” CENIDET 2008
14
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
[22] A. Flores, E. Gómez “Tutorial sobre Redes Neuronales Celulares: Aplicación al
Procesamiento de Imágenes” Laboratorio de Investigación y Desarrollo Tecnológico
Avanzada (LIDETEA) Universidad La Salle.
[23] L. Chua, T. Roska “Cellular neural networks and visual computing. Foundations and
aplications” CAMBRIDGE UNIVERSITY PRESS 2002.
[24] “Circuits and Systems. Fundamental Theory and Applications” IEEE Transactions
October Vol. 42 Nº 10, 1995.
[25] B. Gabmann, K. Scholl, K. Berns “Locomotion of LAURON III in rouge terrain”
Karlsruhe Germany.
[26] R. Altendorfer, N. Moore, H. Komsuoglu “RHex: A Biologically Inspired Hexapod
Runner” Autonomus Robots, Kluwer Academia Publishers 2001.
15
Capítulo I
Página en blanco intencionalmente
16
cenidet
Capítulo 2
Marco Teórico
Capítulo II
cenidet
2.1 Redes Neuronales Artificiales (RNA)
La base y fuente de inspiración de las Redes Neuronales Artificiales (RNA) es la célula del
sistema nervioso de los animales, conocida como neurona, y por ello es importante observar su
fisiología para comprender cómo los investigadores en ingeniería y matemáticas tratan de
imitar los mecanismos de almacenamiento y procesamiento de la formación del cerebro. En una
neurona biológica, Figura 6 se pueden distinguir cuatro partes fundamentales: el soma, el axón,
las dentritas y la sinapsis.
Figura 6.
•
•
•
•
Neurona Biológica
El soma o núcleo de la célula es la parte central donde se realizan casi todas las
funciones lógicas de la neurona.
El axón es una fibra nerviosa conectada directamente con el soma y que sirve como
canal de salida. El axón usualmente está muy ramificado para permitir su conexión a un
gran número de neuronas. En estos sistemas biológicos las señales son secuencia de
impulsos que se propagan por el axón sin atenuación.
Las dendritas son las entradas de información a la neurona. Son un grupo de fibras muy
ramificadas y de forma irregular que se conectan directamente con el soma.
La sinapsis son contactos especializados entre los axones y las dendritas de diferentes
neuronas. Esta sinapsis puede cambiar la polaridad de los potenciales provenientes de
otras neuronas y en estos casos se suele hablar de la naturaleza de excitación o de
inhibición según sea su función para la excitación o bloqueo de la neurona. Se considera
que el almacenamiento de la información está concentrado en conexiones sinápticas. Se
conoce que en el sistema nervioso de los seres humanos las conexiones sinápticas son
de naturaleza química muy compleja a diferencia de los insectos que tienen conexiones
de transmisión eléctricas simples. [27][28]
McCulloch y Pitts construyeron un modelo básico de neurona artificial, con una neurona muy
simple a base de un sumador y una función de activación. Las conexiones (sinapsis) de una
neurona se consideran como se muestra en la Figura 7. En ellas las activaciones xi con unas
determinadas intensidades wji de otras neuronas son sumadas, y se permite que en la salida de
la neurona (axón) se origine una actividad siempre que la suma de wji xi supere un valor umbral
θj.
18
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Figura 7.
Modelo de neurona artificial
La expresión matemática de esta neurona es:
 n

yi = ϕ  ∑ w ji xi + θ j 
 i =1

(1)
Donde wji son los pesos sinápticos que ponderan las entradas xi y θj es el umbral. φ es la
función de activación de la neurona y n el número total de los pesos sinápticos conectados a la
entrada de la neurona. Como función de activación se pueden utilizar varias salidas de las
cuales se mencionan algunas:
•
•
•
•
•
Función escalón o desconexión
Función saturación lineal
Función sigmoidal asimétrica
Función sigmoidal simétrica
Función lineal
Si bien la RNA es la unidad principal, no menos importante es cómo se interconecten entre
ellas para formar una red que procese la información. En este caso se refiere a la arquitectura de
cómo las diferentes formas de interconectar esas unidades básicas creando redes topológicas
diferentes. Pueden existir un sinnúmero de posibles combinaciones de las conexiones entre
ellas, sin embargo podemos definir algunas estructuras fundamentales. [27][28]
•
•
•
RNA de propagación hacia adelante
Red Hopfield
RNA de propagación con retardos de tiempo
Dado el constante incremento de los algoritmos que se presentan bajo el título de RNA se han
hecho algunos intentos para categorizarlas. En general las RNA pueden ser divididas por:
•
•
•
Su arquitectura
Los valores que pueden aceptar los nodos
El tipo de aprendizaje que emplean si éste es adaptativo, etc.
19
Capítulo II
cenidet
A continuación se muestra una clasificación de las RNA de acuerdo a los valores que emplean
y su salida (discreta o continua), tipo de aprendizaje (supervisado o no supervisado) y el tipo de
arquitectura que emplean (regular o irregular) [22].
RNA
Discreta
Continua
Supervisado
Regular
Redes
Neuronales
Celulares
Discretas
Supervisado
No supervisado
Irregular
Regular
Irregular
Regular
Irregular
Hopfield
Redes
Neuronales
Celulares
Perceptrón
Kohonen
Carpenter/
Grossberg
Figura 8.
Clasificación de las RNA
2.2 Autómatas Celulares (AC)
Los Autómatas Celulares (AC) son sistemas dinámicos, para los cuales el espacio, el tiempo t,
y los elementos del conjunto de estados del sistema, son discretos; es importante destacar que el
conjunto de los posibles estados es finitos, y por lo general pequeño (de tan solo dos o tres
elementos).
2.2.1 Espacio de un AC
Un espacio de un AC (equivalente a la arquitectura de una RNA) está compuesto por un arreglo
n-dimensional de elementos de procesamiento llamados células, las cuales son la unidad básica
en todo AC. Las células se encuentran colocadas en una rejilla de geometría regular como las
mostradas en la Figura 9; éstas muestran varios AC bidimensionales con las células expresadas
como cuadros y las relaciones entre ellas como líneas. Una rejilla será k-regular si toda la célula
esta relacionada con exactamente k-células. [22]
a)
Figura 9.
20
b)
c)
Diversos tipos de conexiones para el espacio de un AC, en b) muestra 4 vecinos, en c) muestra 8
vecinos
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
2.2.2 Vecindad
En un AC, cada célula interactúa con las demás dentro de una vecindad finita. En un AC
bidimensional 8-regular Figura 9c) la célula en el renglón i y la columna j se expresa mediante
C(i,j) en términos de un radio r que se llama r-vecindad y se expresa mediante Nr(i,j), la cual
queda definida como:

max{| k − i |, | l − j |} ≤ r,
N r(i, j ) = C ( k , l )

1 ≤ k ≤ M ;1 ≤ l ≤ N 

(2)
Donde r es un número entero positivo y k, l son las coordenadas de otra célula donde la
magnitud de la diferencia entre i, k y j, l no excede el valor de r para ninguno de los dos casos
en la Figura 10 se muestran las vecindades de una célula para r=1.
Figura 10.
Vecindad con r=1 para una célula central (color negro). Las vecinas se distinguen por
encontrarse en color gris.
2.3 Redes Neuronales Celulares (RNC)
Las Redes Neuronales Celulares (RNC) surgen en 1988 cuando Leon O. Chua y L. Yang
presentan un par de artículos que contienen la teoría [29] así como las primeras aplicaciones
[30].
El nombre de la teoría muestra claramente cuales fueron sus fundamentos. Básicamente son dos
las bases que sirven de sustento a las RNC: las Redes Neuronales Artificiales (RNA); y los
Autómatas Celulares (AC); de las primeras “heredaron” su capacidad para el procesamiento
asíncrono en paralelo, la dinámica en tiempo continuo y la interacción global de los elementos
de la red; mientras que de los AC obtuvieron su estructura, o en otras palabras, la idea de
distribuir sus elementos de procesamiento (también llamadas células) en rejillas o plantillas
regulares y permitir que la comunicación de cada célula con las otras se llevara a cabo a nivel
local.
Al igual que con sus antecesores (las RNA), los trabajos no se han concentrado en un área en
particular y por esto se observan aplicaciones en el procesamiento de imágenes [31];
simulación de modelos complejos, de manera particular en biología [32]; encriptación de datos
[33].
En una RNC, cada célula (que procesa valores continuos de una señal) está interactuando con
las demás dentro de una vecindad finita solamente, una característica concebida de los AC. El
21
Capítulo II
cenidet
patrón de interacciones es llamado Plantillas de Clonaje que es equivalente a los pesos en una
RNA o al “kernel” en un AC.
Estas características pueden obtenerse a través de la llamada “propiedad de propagación”, la
cual dice que el valor de salida de una célula puede ser afectado después de n iteraciones por
una región mayor de vecinos de la imagen de entrada. En otras palabras, tras una iteración una
célula se ve afectada por sus vecinos; después de dos iteraciones los vecinos de la célula se
vieron afectados por sus propios vecinos, así que la célula obtendrá información de los vecinos
de sus vecinos, y así sucesivamente de manera que para un tiempo suficientemente grande,
cualquier par de células puede llegar a relacionarse de alguna forma [22].
2.3.1 Ecuaciones de una Red Neuronal Celular.
Los modelos que se han desarrollado dentro de las RNC son los dos que se emplean en la
mayoría de los casos. El primero es el más común y corresponde al modelo continuo con una
sola capa; es el modelo original y el más empleado, y por esto normalmente se le llama
simplemente RNC. El segundo modelo, fue la primera extensión al original; éste emplea
arreglos de RNC en capas (dos o más, de manera semejante como lo hacen los perceptrones) y
es por ello que recibe el nombre de RNC multicapa.
Figura 11.
Red Neuronal Celular de 2 dimensiones M(filas) x N(columnas) de 3x3. Los recuadros significan
las células y las líneas las interconexiones
2.3.2 Redes Neuronales Celulares de Una Capa.
Esta clase ha sido el modelo de uso predominante así como la base para las diversas variaciones
y extensiones que se han realizado en la teoría; cuyo éxito radica en su simplicidad. Como se
podrá observar, no consta más que de un arreglo de células que están descritas por un conjunto
simple de ecuaciones, sin embargo, cuentan con una gran riqueza de fenómenos que pueden ser
descritos con ellas gracias a la alta cantidad de elementos que procesan los datos de manera
paralela y continua. Las ecuaciones que definen la dinámica de una red son las presentadas a
continuación:
Ecuación de estado de una célula M x N:
dxij (t )
dt
= − xij (t ) +
1 ≤ i ≤ M ;1 ≤ j ≤ N
22
∑ A (y
kl∈N r (ij )
ij ;kl
kl
(t ), yij (t ) ) +
∑ B (u
kl∈N r (ij )
ij ;kl
kl
(t ), uij (t ) ) +iij
(3)
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Donde:
- ij refiere a la ij-ésima célula de una red de 2 dimensiones.
- kl ∈ N r (ij ) refiere a la kl-ésima célula dentro de un vecindario r de la ij-ésima célula.
- xij , yij , uij denotan las variables de estado, salida y de entrada de la célula C(i,j)
respectivamente.
- A es la matriz o plantilla de retroalimentación, en función de su propia salida y la salida de las
células de su vecindad.
- B es la matriz o plantilla de control. Estas entradas pueden ser de la propia célula y de las
entradas de sus células vecinas.
- iij se le llama umbral (bias).
La función de salida está definida por la siguiente ecuación:
yij (t ) =
(
1
xij (t ) + 1 − xij (t ) − 1
2
1 ≤ i ≤ M ;1 ≤ j ≤ N
)
(4)
La función de entrada por:
uij = Eij
(5)
1 ≤ i ≤ M ;1 ≤ j ≤ N
En donde E ij es el voltaje de entrada. La vecindad de una célula C(i,j) (Figura 12) en términos
de un radio r se llama r-vecindad y se representa mediante Nr(i,j),la cual queda definida como:
N r (i, j ) = {C ( k , l ) max | {k − i , l − j } ≤ r}
1 ≤ k ≤ M ;1 ≤ l ≤ N
Se observa que la ecuación (6) está definida como la ecuación (2) de los AC.
(a)
Figura 12.
(6)
(b)
Vecindad con (a) r=1, (b) r=2
Condiciones permitidas:
uij ≤ 1
xij (0) ≤ 1
1 ≤ i ≤ M ;1 ≤ j ≤ N
23
Capítulo II
cenidet
En donde xij(0) es el estado inicial. Para la mayoría de los casos este valor es igual al valor de
entrada uij, con valores de 1 y -1.
Se puede observar que la ecuación (3) es dinámica. Las células en una RNC son idénticas
porque cada célula obedece a la misma ecuación (3). Sin embargo A y B deben de ser
diferentes por cada neurona. Si éstas son iguales a lo largo de la RNC, las plantillas de clonaje
serán invariantes; de otra manera serán variantes. Si hacemos B=0 para cada célula, la RNC es
autónoma [22][29][30].
2.3.3 Redes Neuronales Celulares MultiCapa.
El autor también describió en el artículo [29] el modelo multicapa. Gracias a esta extensión, se
cuenta con un conjunto de elementos arreglados en capas, con cada capa persiguiendo un
objetivo en particular, el resultado final consistirá entonces en la “suma” de los resultados así
obtenidos. Es por esto que la variedad de fenómenos a ser analizados se ve incrementada.
La generalización se consigue mediante el empleo de diferentes variables de estado en cada
célula en lugar de una sola. De acuerdo con lo anterior es necesario modificar el modelo de
RNC para poder incluir todas las capas, de manera que su forma matricial y, utilizando la
definición para el operador de convolución (*), la ecuación (3) se rescribe como:
dX ij (t )
dt
= X ij (t ) + A * Yij (t ) + B * U ij + I ij
(7)
Donde:
 A11

 ⋅
A= ⋅

 ⋅
A
 l1
0
⋅
⋅
⋅
0
⋅
0
⋅
⋅
0
0
⋅
0
⋅
0
0 
 B11


0 
 ⋅
⋅  B= ⋅


0 
 ⋅
B
All 
 l1
0
⋅
⋅
⋅
0
⋅
0
⋅
⋅
0
U 1ij 
 Y1ij 
 X 1ij 


 


 ⋅ 
 ⋅ 
 ⋅ 
;Y =
;U =
X ij = 
⋅  ij  ⋅  ij  ⋅ 


 


U 
Y 
X 
 lij 
 lij 
 lij 
Siendo l el número de capas.
24
0
⋅
0
⋅
0
0 

0 
 I1 
 
⋅
⋅ 
 I = 

0 
⋅

 I 
Bll 
 l
(8)
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
2.3.4 Modelos para una Red Neuronal Celular.
El circuito básico para una RNC es la célula. Ésta contiene componentes lineales y no lineales,
como capacitores lineales, resistencias lineales fuentes de corriente lineales y no lineales y
fuentes independientes [29][30].
El modelo típico propuesto por Leon O. Chua se muestra en la Figura 13.
Figura 13.
Modelo de una célula
Donde:
- u, x, y denotan la entrada, estado y la salida de C(i,j) respectivamente.
- Vxij representa el voltaje de la variable de estado de C(i,j).
- Vuij es el voltaje de entrada de C(i,j).
- Vy ij es el voltaje de salida de C(i,j).
- Eij es una fuente de voltaje independiente.
- I ij es una fuente de corriente independiente.
- C es un capacitor lineal.
- Rx, Ry son resistencias lineales.
- I x(ykl) y Ix(ukl) son fuentes de corriente dependientes de las salidas y entradas de células
vecinas respectivamente definidas de la siguiente forma:
I xy (i, j; k , l ) = A(i, j, ; k , l )v ykl
I xu (i, j; k , l ) = B (i, j, ; k , l )vukl
C ( k , l ) ∈ N r (ij )
De donde A y B son las plantillas de clonaje (admitancias)
El único elemento no lineal en cada célula es la fuente de corriente controlada por voltaje de la
salida en amperes:
 1 
I yx =   f (v xij )
(9)
R 
 y
En donde la función se muestra en la siguiente figura:
25
Capítulo II
cenidet
Figura 14.
Respuesta de la no linealidad a la salida
Todas las fuentes pueden implementarse con amplificadores operacionales y aplicando leyes de
corriente y voltaje de Kirchoff en (3),(4) y (5) se tiene:
C
dv xij (t )
dt
=−
1
v xij (t ) + ∑ Aij ;kl (v ykl (t ) ) + ∑ Bij ;kl (vukl (t ) ) +I ij
Rx
kl∈N r (ij )
kl∈N r (ij )
(10)
1 ≤ i ≤ M ;1 ≤ j ≤ N
(
1
v xij (t ) + 1 − v xij (t ) − 1
2
1 ≤ i ≤ M ;1 ≤ j ≤ N
v yij (t ) =
vuij = Eij
1 ≤ i ≤ M ;1 ≤ j ≤ N
)
(11)
(12)
De esta manera queda definida la célula que formará parte de la Red Neuronal Celular. En el
siguiente capítulo se retoman estas ecuaciones para la aplicación en la robótica. Se utilizarán
amplificadores operacionales en su arreglo de sumador para modelar las ecuaciones (10) y (11).
2.4 Generador Central de Patrones
El Generador Central de Patrones (GCP), es un complejo sistema compuesto por subredes de
neuronas, capaces de generar patrones de movimiento rítmico en animales, las cuales también
coordinan los tiempos precisos para cada tipo de locomoción. Éste incluye subredes de
Neuronas Comando (NC) (S.N. Central) y Neuronas Generadoras de Movimientos Locales
(NGML) (GCP) ilustrado en la Figura 5 [34].
Las primeras forman el centro de decisiones: ellas reciben estímulos de órganos sensoriales o
de neuronas de alto nivel, y así mandan los comandos necesarios al NGML para adaptar los
patrones de locomoción ante un medio ambiente. Las NGML son responsables de la
coordinación de los órganos efectores (por ejemplo los pies) dedicados a la locomoción.
26
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
El GCP es enormemente utilizado para el control de locomoción en robots. Entre ellos hay
bípedos [35][36], cuadrúpedos [37][38][39], hexápodos y más. Para robots que usan GCP, el
control del movimiento no sólo es visto como un mero problema de control, el cual es una
secuencia de acciones algorítmicamente organizadas, sino como un flujo continuo de señales
análogas manejadas por leyes de difusión. Este acercamiento tiene los siguientes puntos: 1) Los
cálculos requeridos para la coordinación de partes físicas se reduce a la auto organización de las
oscilaciones de las células por los movimientos rítmicos que se presentan; 2) La conexión por
medio de la sinapsis cambia la configuración del GCP y por ende el patrón rítmico, esto
permitiendo adaptación a varios ambientes [40].
Entre muchos modelos y métodos para realizar los GCP, la mayoría de ellos son
implementados por algoritmos en procesadores digitales. Algunos usan Redes Neuronales
Artificiales (RNA), por ejemplo la red Hopfield [41]. Las RNA son una poderosa arquitectura
para modelar fenómenos no lineales y complejos, porque tienen la capacidad de aprender de
ejemplos, directamente inspirados de la biología. A tales ventajas corresponden varias
desventajas en términos de realización electrónica. De hecho la conectividad masiva entre las
células, mientras por un lado permitiendo una interpolación universal, por otro lado requiere de
muchas conexiones físicas para la realización electrónica. Las Ecuaciones Diferenciales son
usadas en los modelos de GCP y la integración numérica se puede lograr por métodos de
Runge-Kutta [41][42]; un procesador digital puede operar con una alta exactitud y resolver el
problema de forma eficiente [43].
Actualmente hay algunos circuitos de GCP realizados [43][44]. Por ejemplo, Patel y otros,
diseñados en un chip análogo de GCP basado en las neuronas de Morris-Lecar para la
coordinación intersegmental de un insecto artificial [45]. Still y Schölkopf desarrollaron un
método de aprendizaje supervisado para sintonizar al GCP basado en el aprendizaje de una
deseada fase o ciclo de trabajo. Lewis y otros proponen un chip VLSI análogo personalizado
como un controlador de GCP, el cual usa las neuronas “integran y disparan” [44]. Nakada y
otros propusieron un controlador CMOS neuromórfico analógico basado en el modelo AmariHopfield para las coordinación entre articulaciones en la locomoción de cuadrúpedos [43].
Otras dos bien conocidas GCP análogos son las Redes Neuronales Celulares originalmente
propuestas por Chua y Yang [29][30] y aplicadas al control de la locomoción en robots por
Arena [20][34][46][47]; y las Neuronas Nerviosas propuestas por Mark Tilden [48][49][50].
En este trabajo la realización de circuitos analógicos con respecto a los de implementación
digital y simulación por software es desarrollada. La implementación análoga permite realizar
una locomoción más apegada a la que es realizada por los seres vivos. Cada unión de la
estructura del robot representa no más de un control variable independiente, mientras el tiempo
transcurre a la salida (o el estado) y de la célula (o neurona). Cuando el número de uniones
incrementa sólo se tienen que incrementar el número de células (o neuronas). No se necesita
mayor energía computacional.
27
Capítulo II
cenidet
2.4.1 Red Neuronal Celular de Reacción-Difusión (RNC-RD) para generación
de Auto-Ondas (AO)
Algunos artículos han aparecido en la literatura relacionados con el uso de las RNC para
generar patrones de Auto-Ondas (AO) [51][52]. Un arreglo de una RNC-RD de segundo orden
no lineal se adopta, obteniendo fenómenos de auto-ondas. El modelo es introducido a través de
algunas definiciones típicas usadas en la terminología de las RNC, y algunos puntos son
mostrados.
•
Punto 1: La dinámica básica de la célula de RNC-RD para la generación de las autoondas es un sistema de segundo orden definido como [53]:
x1;i , j = − x1;i , j + (1 + µ + ε ) y1;i , j − sy 2;i , j + i1 + D1 ( y1;i +1, j + y1;i −1, j + y1;i , j −1 + y1;i , j +1 − 4 y1;i , j );
x 2;i , j = − x 2;i , j + (1 + µ + ε ) y 2;i , j − sy1;i , j + i2 + D2 ( y 2;i +1, j + y 2;i −1, j + y 2;i , j −1 + y 2;i , j +1 − 4 y 2;i , j );
(13)
1≤ i ≤ M
1≤ j ≤ N
Con
y l ;i , j = 0.5(| xl ;i , j + 1 | − | xl ;i , j − 1 |)
l = 1,2
1≤ i ≤ M
1≤ j ≤ N
(14)
Donde:
- x1, 2 son el estado de la célula 1 y 2 respectivamente
- μ, ε y s son constantes que modifican la salida de la célula 1 o 2.
El término en paréntesis del lado derecho de (13) representa la salida de las células vecinas de
su misma capa y D1, D2 son los coeficientes de difusión (constante).
•
28
Punto 2: Consideremos a un arreglo de RNC de M x N (Figura 15) con células
definidas en el punto 1.
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Figura 15.
Arreglo bidimensional de una RNC
Tomando como referencia investigaciones realizadas en [46] y asignado los siguientes valores a
las constantes de (13):
µ = 0.7, ε = 0, s1 = s2 = s = 1, i1 = −0.3, i2 = 0.3
(15)
suficientes condiciones son satisfechas para cada célula muestre un ciclo lento-rápido, mientras
que la correspondiente RNC-RD genera auto-ondas.
Definición 1: El modelo de estado de las nuevas dos variables de estado de la RNC con
plantillas constantes es definida por:
x ij = − xij + A * yij + B * uij + I
(16)
Donde xij = [ x1;i , j x 2;i , j ]' , yij = [ y1;i , j y 2;i , j ]' , uij = [u1;i , j u2;i , j ]' son el estado, la salida y la entrada,
respectivamente, mientras que A, B, e I son las plantillas de retroalimentación, control y bias y
el operador “*” es configurado por la siguiente definición:
Definición 2 (Operador Convolución): para cada plantilla T se mantiene lo siguiente:
T * vij =
∑ T (k − i, l − j )vkl
(17)
C ( k ,l ) εNσ ( i , j )
Punto 3: tomando en cuenta los puntos anteriores y definiciones las plantillas de clonaje, la
RNC-RD está caracterizada como sigue [54]:
A
A =  11
 A21
A12 
;
A22 
 i1 
B = 0; I =  ;
 i1 
(18)
Donde:
29
Capítulo II
cenidet
0

A11 =  D1
0

0

− 4 D1 + µ + ε + 1 D1 ;
D1
0 
 0

A22 =  D2
 0

0 

− 4 D2 + µ + ε + 1 D2 ;
D2
0 
D1
D2
 0 0 0
0 0



A12 =  0 − s1 0 ; A21 =  0 s2
 0 0 0
0 0



(19)
0

0
0 
Para la formación de auto-ondas, la siguiente condición se debe mantener:
D1 = D2 = 0.1
(20)
Este modelo de RNC es garantizado a ser robusto a incertidumbres paramétricas y ruido [53],
en vista de su implementación electrónica.
Observaciones.
La importancia de este enfoque es que la misma estructura puede ser implementada para
propagación de auto-ondas o formación de patrones, simplemente modulando sutilmente los
parámetros μ, ε y s; los coeficientes de las plantillas de clonaje y toda la estructura permanece
inafectada. Como las auto-ondas son fenómenos autónomos, la plantilla B permanece en cero.
Por tanto, todo el fenómeno es caracterizado por los valores de las plantillas A e I, que pueden
ser derivados del Punto 1 y 2. El diseño de la célula básica de las RNC da lugar a la RNC de
dos capas o dos estados. Esto significa que cada célula será un circuito no lineal de segundo
orden. Lo que implica que las plantillas A e I no son más que simples bloques de matrices que,
se relacionan en general con la RNC (Definición 1), y ordenado como en (18). Cada sub-bloque
de los coeficientes de matriz deriva de ordenes de parámetros del modelo de la célula (13).
Además, desde que la conexión entre cada célula en la primera capa y las células vecinas de la
misma capa es solamente difusivo solo en la dirección Norte, Sur, Este y Oeste; los otros
términos A11 son D1 o cero. La misma consideración se mantiene para la plantilla A22 para la
segunda capa de la RNC. Los valores de plantillas A12 y A21 definen la interacción entre las dos
capas de cada célula y sus vecinos de la otra capa, solo el parámetro de en medio no es cero,
más específicamente, el parámetro s viene de (13). Otro importante punto es que el paradigma
de la RNC ha sido demostrado a ser discretizado en las correspondientes EDP no lineales [55].
30
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
2.5 Bibliografía
[20] P. Arena, L. Fortuna, and M. Branciforte, “Reaction-diffusion CNN algorithms to
generate and control artificial locomotion” IEEE trans. Circuits Syst. I, vol. 46, Feb 1999.
[22] A. Flores M., E. Gómez R. “Tutorial sobre Redes Neuronales Celulares: Aplicación el
procesamiento de imágenes” Laboratorio de Investigación y Desarrollo de Tecnología
Avanzada, Universidad La Salle.
[27]García, Joyanes “Redes Neuronales” Addisson Wesley, 1993.
[28] Martín, Sanz “Redes Neuronales y Sistemas Difusos” Alfaomega, 2006.
[29] L. O. Chua, L. Yang “Cellular Neural Networks: Theory” IEEE Transactions on Circuits
and Systems 1988.
[30] L. O. Chua, L. Yang “Cellular Neural Networks: Applications” IEEE Transactions on
Circuits and Systems 1988.
[31] K. R. Crounse, L. O. Chua, “Methods for Image Procesing and Patterns Formations in
Cellular Neural Networks” IEEE Transactions on Circuits and Systems 1995.
[32] G. Setti, P. Thiran “Biological Pattern Formation with Cellular Neural Networks” IEEE
CNNA-96, 1996.
[33] R. Caponetto, M. Lavorgna, L. Occhipinti, “Cellular Neural Networks in Secure
Transmissions Applications” IEEE CNNA-96, 1996.
[34] P. Arena, L. Fortuna “Collective behaviour in cellular neural networks to model the
central pattern generator” Int. J. Syst. Sci. Vol.31 Nº 7, 2000.
[35] G. Taga, Y. Yamaguchi, and H. Shimizu, “Self-organized control of bipedal locomotion
by neural oscillators in unpredictable environment” Bio. Cybern., vol. 65, 1991.
[36] H. Inada and K. Ishii, “Bipedal walk using a central pattern generator” International
Congress Series, vol. 1269, 2004.
[37] M. Golubitsky, I. Stewart, P.-L. Buono, and J. J. Collins, “A modular network for legged
locomotion” Physica D, vol. 115, 1998.
[38] J. J. Collins and S. A. Richmond, “Hard-wired central pattern generators for
quadrupedal locomotion” Bio Cybernetics, vol. 71, no. 5, 1994.
[39] S. Venkataraman, “A simple legged locomotion gait model” Robotics and Autonomous
Systems, vol. 22, 1997.
[40]A. Fujii, N. Saito, K. Nakahira, A. Ishiguro, and P. Eggenberger, “Generation of an
adaptive controller CPG for a quadruped robot with neuromodulation mechanism” in IEEE
Int. Conf. Intell. Robots Syst., 2002.
[41] M. Felipe, F. Yang, and Z. Yang, “Building artificial CPGs with asymmetric hopfield
networks” in IEEE-INNS-ENNS, vol. 4, 24-27 July 2000.
[42] Z. Cheng, H. Zheng, X. Zhang, and L. Zhao, “The CPG-based bionic quadruped system”
in IEEE Inter. Conf. SMC, vol. 2, 5-8 Oct 2003.
[43] K. Nakada, T. Asai, and Y. Amemiya, “An analog CMOS central pattern generator for
interlimb coordination in quadruped locomotion”IEEE Trans. Neural Networks, vol. 14, no.
5, Sep 2003.
[44] M. A. Lewis, M. J. Hartmann, R. Etienne-Cummings, and A. H. Cohen, “Control of a
robot leg with an adaptive aVLSI CPG chip” Neurocomputing, vol. 38-40, 2001.
[45] G. Patel, J. Holleman, and S. Deweerth, “Analog VLSI model of intersegmental
coordination with nearest neighbor coupling” Adv. Neural Inform. Processing Syst., vol. 10,
1998.
31
Capítulo II
cenidet
[46] P. Arena, L. Fortuna, M. Frasca, and G. Sicurella, “An adaptive, self-organizing
dynamical system for hierarchical control of bio-inspired locomotion” IEEE Trans. Syst.,
Man, Cybern. B, vol. 34, no. 4, Aug 2004.
[47] P. Arena, M. Branciforte, and L. Fortuna, “A CNN-based experimental frame for patterns
and autowaves” Int. J. Circ. Theor. Appl., vol. 26, no. 6, 1998.
[48] S. Still and M. W. Tilden, “A controller for a four legged walking machine” in 1st
European Workshop on Neuromorphic Systems, Scotland, August 1997.
[49] B. Haslacher and M. Tilden, “Living machines” in Robotics and Autonomous Systems:
The Biology and Technology of Intelligent Autonomous Agents, L. Steels, Ed. Elsivier, 1995.
[50] B. Hasslacher and M. W. Tilden, “Living machines” in IEEE Workshop on BioMechatronics, L. Steels, Ed. Minneapolis, USA: Elsivier, 1996.
[51] L.O. Chua, Ed. Special Issue on Nonlinear Waves, Patterns and Spatio-Temporal Chaos,
IEEE Trans. Circuits Syst. I Vol.42, Oct. 1995.
[52] L. Goras, L.O. Chua, and D.M.W. Leenaerts, “Turing patterns in Cnn’s Part. 1: Once
over lightly” IEEE Trans. Circuits Syst. I Vol. 42 1995.
[53] P. Arena, S. Baglio, L. Fortuna, and G Manganaro, “Self-Organitation in a two-layer
CNN” IEEE Trans. Circuits Syst. I Vol. 45 1998
[54] P. Arena, R. Caponetto, L. Fortuna, and G. Manganaro, “Cellular Neural Networks to
explore complexity” Sofá. Comput. Res. J. Vol. 1 Nº 3 1997.
[55] A. Scout. Nonlinear Science. Oxford, U.K.: Oxford Univ. Press 1999.
32
Capítulo 3
Caso de Estudio: Robot
Hexápodo
Capítulo III
cenidet
3.1 Introducción
Se presenta un nuevo enfoque para la generación en tiempo real de patrones de locomoción.
La metodología toma en cuenta los aspectos biológicos de caminar de multípodos, pero nunca
descuida las cuestiones de aplicación. La consideración básica es que la estructura de vida en
movimiento tiene numerosos grados de libertad, actuados concurrentemente para el control en
tiempo real asombrosamente eficientes. Por lo tanto, la tarea es diseñar estructuras analógicas
para trabajar como patrón de generadores neuronales, capaces de manejar muchos grados de
libertad en tiempo real, al igual que los tejidos neuronales biológicos producen masivamente
señales en paralelo para impulsar el sistema muscular.
La metodología presentada toma su inspiración del paradigma biológico del GCP, que es capaz
de modelar funcionalmente las estructuras neuronales dedicadas a la generación y
el control de la locomoción en los animales. El punto clave del trabajo es diseñar un adecuado
sistema analógico, capaz de reproducir señales neuronales que cualitativamente se relacionarán
con la dinámica neuronal biológica. En [56] se describen las Auto-Ondas (AO) que se asemejan
a un comportamiento de señales neuronales biológicas y que pueden mostrar una propagación
de señales a lo largo de una red. Por lo tanto, el objetivo fundamental es diseñar un circuito
analógico espacio-temporal capaz de generar auto-ondas. La arquitectura construida es una
RNC; posteriormente, un GCP basado en RNC es diseñado para generar las señales adecuadas
para la obtención de la locomoción y el control en multípodos biológicamente inspirados.
3.2 GCP para robot Hexápodo.
Muchos estudios han intentado demostrar la organización y funcionamiento del GCP en
vertebrados e invertebrados. La hipótesis central es que hay un generador de patrones neuronal
dentro del Sistema Nervioso Central (SNC) que produce los programas básicos motrices [57].
Información derivada de las entradas de sensores pueden modificar la salida del patrón
generador para así adaptarse al medio ambiente con un tipo de locomoción.
Más específicamente, los movimientos rítmicos que controlan los sistemas de actuación
(músculos) son controlados por NGML. Éstas en turno son controladas por Neuronas Comando
(NC), que arreglan un esquema particular de locomoción basado en ambas señales provenientes
del NC o de la retroalimentación derivada de las señales sensoriales de tal forma que la salida
del patrón generador de locomoción pueda ser modificada para adaptarse al medio ambiente
[58] [59]. Desde el punto de vista del comportamiento, todo el sistema locomotor (GCP) por
tanto parece ser un sistema espaciotemporal complejo Activador – Inhibidor, caracterizado por
una organización jerárquica, en la cual, un grupo de neuronas (NC), debido al sistema de
sensores o la excitación central, activa otro grupo de neuronas (NGML) que genera las señales
apropiadas en tiempo para un tipo de locomoción inducido por las NC. Todo el sistema de
generación de locomoción puede ser esquematizado por la Figura 5. Las NC son una colección
de células que generan un patrón específico de cada esquema de locomoción. Éstas son
responsables de la coordinación entre las NGML y los músculos del sistema.
La idea de usar arreglos de osciladores artificiales para modelar la generación neuronal de
patrones de locomoción no es nueva. A principios del siglo 20 la idea de dos centros acoplados
34
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
recíprocamente inhibiéndose y capaz de realizar actividad alterna fue introducida, y durante los
70’s, estructuras en forma de anillo conteniendo dos o más neuronas fueron investigadas por su
dinámica emergente oscilatoria.
El andar en los ciempiés fue también modelado como un controlador por ondas de propagación,
y anillos de osciladores enriquecidos por conexiones diagonales vistos como modelos para
producir similares andares como aquellos observados en los tetrápodos o hexápodo.
Desafortunadamente, algunos de estos modelos no fueron actualmente implementados,
principalmente porque los primeros diseños físicos no fueron capaces de lograr las
características mostradas en los modelos. Durante los 70’s algunos modelos matemáticos
fueron introducidos junto con su software de simulación. Una década después, la introducción
de Redes Neuronales Artificiales promovieron a una serie de aplicaciones interesantes para el
control de maquinas caminantes inspiradas biológicamente [60]. Estos interesantes
experimentos finalizaron con simulaciones en software.
3.2.1 GCP generando Auto-Ondas (RNC)
No existe una fórmula que permita la creación de una estructura celular que logre un
desempeño en particular, en este caso, realizar Auto-Ondas que puedan emular los patrones
oscilatorios vistos en las neuronas biológicas. Si bien las RNC pueden utilizarse para generar
Auto-Ondas o Patrones de Turing, en este trabajo se utilizará un diseño en particular para
resolver el problema de la generación de patrones oscilatorios que controlen las extremidades
del robot.
Una condición necesaria para fijar las auto-ondas es que D A ≅ DI mostrada en (20). El punto
clave es que todas las características de las Auto-Ondas son observadas en los disparos
neuronales. Por tanto, estos últimos pueden ser generados artificialmente si una estructura es
diseñada para reproducir formas de Auto-Ondas.
Desde el punto de vista macroscópico, en el movimiento más simple en los animales, por
ejemplo en algunos moluscos, los tipos de locomoción son directamente inducidos por la
propagación de señales de forma de Auto-Ondas. El cuerpo suave estructural es capaz de
sincronizarse con la forma en que viaja la onda y un movimiento en forma de onda es generado.
En animales más desarrollados, como los insectos, la propagación de las auto-ondas puede
todavía ser asumida para generar locomoción, pero la estructura neuronal ha sido mejorada con
un alta y mucha más compleja organización, donde los tipos de locomoción son patrones
seleccionados.
3.2.2 Neuronas Generadoras de Movimientos Locales (NGML): Generador
autónomo (Auto-Ondas)
El término autónomo fue descrito por R. V. Khorhlov para indicar ondas autónomas. Ellas
representan un caso particular de ondas nominales las cuales se propagan sin una función
fuerza en un medio activo no lineal, permanecen constantes en forma durante la propagación
mientras que la interferencia no interviene. La propagación aparece a expensas de energía
almacenada en un medio activo; tal energía es usada para disparar el proceso dentro de regiones
adyacentes.
35
Capítulo III
cenidet
Las RNC-RD pueden ser configuradas como GCP. Usualmente un anillo de RNC es usado. La
solución de esa estructura es una propagación de Auto-Onda bien definida en la dirección. Las
salidas de las células constituyen las señales de manejo a los sistemas de actuación del robot, es
así como las RNC juegan un papel de GCP en control biológico de locomoción. Los
movimientos en cada articulación se controlan por un oscilador simple, mientras que la
coordinación entre las articulaciones es provista por la conexión entre los osciladores. Varios
patrones de locomoción pueden ser implementados usando una estructura mostrada en (13).
Cuando la RNC de Chua es usada como GCP, el circuito simplemente se modifica pero el
comportamiento permanece igual [20][34][46][47]. Primero se considera una célula autónoma
de dos capas, cuya su ecuación dinámica es:
x1;i , j = − x1;i , j + (1 + µ + ε ) y1;i , j − s1 y 2;i , j + i1
(21)
x 2;i , j = − x 2;i , j + s2 y1;i , j + (1 + µ − ε ) y 2;i , j + i2
Con:
yi ;i , j = 0.5(| xi + 1 | − | xi − 1 |)
(22)
Las ecuaciones (21) y (22) son implementadas por los siguientes circuitos:
Figura 16.
Realización de la ecuación 21 (a) y 22 (b)
Todo el esquema de circuito de una célula en forma de generador de auto ondas es dado en la
Figura 17.
36
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Figura 17.
Realización de la neurona como generador de auto onda.
P. Arena [53] muestra que el sistema usado de la célula en una RNC de M xN, para las
opciones convenientes de estos parámetros, son capaces de mostrar un patrón de formación o
una onda autónoma de propagación. En [47] los parámetros utilizados para generar Auto-Ondas
son: µ = 0.7, ε = 0, s1 = s2 = s = 1, i1=-0.3 e i2=0.3 mostrados en (15). Las bias i1,i2 son
realizadas por un divisor de voltaje por la fuente de potencia Vcc de aquí que los valores
absolutos son los mismos.
En la siguiente gráfica se muestra la simulación de (21) mostrando los estados de la célula X1 y
X2 con los parámetros de (15).
37
Capítulo III
cenidet
Simulación Célula 1 Estados X1 y X2
2.5
X1
X2
2
1.5
1
X(Volts)
0.5
0
-0.5
-1
-1.5
-2
-2.5
-3
0
2
4
6
8
10
t(seg.)
Figura 18.
Simulación de los estados X1 y X2 de una célula de(21)
Donde las salidas de la célula Y1 y Y2 de (22) se muestran a continuación con los parámetros
de (15)
Simulación Célula 1 Salidas Y1 y Y2
2
Y1
Y2
1.5
1
Y(Volts)
0.5
0
-0.5
-1
-1.5
-2
0
2
4
6
8
10
t(seg.)
Figura 19.
Simulación de los salidas Y1 y Y2 de una célula de (22)
Si tales células son localmente conectadas a su vecindario por un plantilla de difusión
discretizada, introducida por L. O. Chua [61], podemos derivar la siguiente RNC-RD con las
plantillas constantes:
x ij = − xij + A * yij + I
38
(23)
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Donde xij = [ x1;i , j x 2;i , j ]' , yij = [ y1;i , j y 2;i , j ]' son el estado y la salida de la RNC, A e I son las
plantillas de retroalimentación y de Bías respectivamente (18) y (19).
Donde:
A
A =  11
 A21
0

A11 =  D1
0

A12 

A22 
i 
I =  1 
 i2 
D2
0
0
 0



− 4 D1 + µ + ε + 1 D1  A22 =  D2 − 4 D2 + µ − ε + 1 D2 
 0
D1
D2
0 
0 

 0 0 0
 0 0 0




A21 =  0 s2 0 
A12 =  0 − s1 0 
 0 0 0
 0 0 0




(24)
D1
(25)
La implementación del acoplamiento de la salida de las células puede ser realizada usando
simples amplificadores operacionales en la configuración sumador. La salida de cada circuito
será conectada a la entrada no inversora del amplificador operacional de la célula de la Figura
20 representando resistencias cuyos valores representan los coeficientes de difusión D1 y D 2.
VECINDARIO
Yi
Figura 20.
Realización de los acoplamientos laplacianos
Cuando las células anteriores son usadas por una RNC de 5 x 5 mostrada en la Figura 15, se
obtendrá una onda de propagación fijando las condiciones iniciales de cada célula de la primera
fila del arreglo como x1=1V. y x2= -1V. [34]. El resto de las células se sincronizarán con la
propagación de la onda generada por la primera fila. Si otras condiciones iniciales no son
39
Capítulo III
cenidet
impuestas en el arreglo, al final de la propagación a través del quinto renglón, la Auto-Onda
desaparece y un frente entre las ondas inducidas por cada célula comienza. Tales frentes de
onda competentes se aniquilan mutuamente, llevando al inicio de una propagación de AutoOndas en una dirección particular, la cual depende de la posición de algunas células
dominantes con el bías de todo el fenómeno [47].
Para generar auto ondas controladas, varias células deberán concentrarse en lazo, se muestra a
continuación un ejemplo. Usualmente el arreglo de una dimensión es usada, en este trabajo se
utilizan células de dos estados. Cada célula es modulada por su célula precedente y encargada
de afectar el disparo de la siguiente célula. De hecho, una forma de obtener Auto-Ondas
continuas dentro de un lazo es conectar la última célula del arreglo hacia la primera célula
mostrada una Figura 21. La propagación de la auto onda (y1) es mostrada en la Figura 22.
Figura 21.
Realización de un generador de auto onda
En la Figura 22 la RNC es de una dimensión. Cada célula está conectada solamente con dos
vecinos así la plantilla de retroalimentación A debe ser diferente a la del caso del arreglo de dos
dimensiones. Todos los otros parámetros permanecen iguales.
Figura 22.
40
RNC de una dimensión (a) Propagación de una auto onda en un anillo (b)Esquema simplificado
del patrón de oscilación.
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
La plantilla de retroalimentación A se muestra acontinuación:
A
A =  11
 A21
A12 

A22 
(26)
Donde:
A11 = [D1
− 2 D1 + µ + ε + 1 D1 ]
A22 = [D2
− 2 D2 + µ − ε + 1 D2 ]
A12 = [0 − s1
A21 = [0 s1
(27)
0]
0]
Tan pronto el anillo sea conectado, la célula dominante ganará a las otras y disparará para
iniciar la propagación de la onda. Así una Auto-Onda aparece. Este frente manejará los
servomotores y así sucesivamente para mostrar un tipo de locomoción. Por ejemplo en el
esquema de la Figura 23 se muestra un tipo de caminar, cuando los pares diagonales de cada
pata actúan al unísono. Desde que la salida y1 de cada célula puede ser positiva o negativa, cada
célula es capaz de manejar a un motor hacia delante o detrás. Así cada motor es conectado a
solamente una célula.
Figura 23.
Conexión motora
41
Capítulo III
cenidet
3.2.3 Modelo de la RNC para el Robot Hexápodo (Flexor – Extensor)
Se toma la metodología propuesta anteriormente, se observa que se pueden generar patrones de
oscilación haciendo un arreglo simple en forma de anillo que permita la generación de estos
patrones. Si retomando lo expuesto en el Capítulo 1 en el cual se menciona que el objetivo
principal de este trabajo es realizar un tipo de caminar o andar, que en este caso es el tipo
trípodo o caminar rápido, vemos que al unir dos células (descritas anteriormente) se presenta un
fenómeno de propagación con un desfase de la primera célula con respecto a la precedente.
¿Qué muestra esto?. Que podemos solucionar el problema de la generación de patrones
oscilatorios para un robot hexápodo que camine en forma rápida (trípodo) con sólo dos células.
Lo que nos lleva a que podemos particularizar el problema en un simple modelo de dos células
inhibiéndose mutuamente, llamado modelo Flexor – Extensor.
Este modelo nos servirá, como ya se explicó anteriormente, como nuestro NGML que formará
parte del GCP y que por supuesto estará realizado mediante RNC.
Tomando las ecuaciones (27) y (28) por [47] se tiene las siguientes ecuaciones de estado que
modelarán el sistema neuronal del robot Hexápodo:
x1,a = − x1,a + (1 + µ ) y1,a − sy 2,a + i1 + ξy1,b
x 2,a = − x2,a + (1 + µ ) y 2,a + sy1,a + i2
(28)
x1,b = − x1,b + (1 + µ ) y1,b − sy 2,b + i1 + ξy1,a
x 2,b = − x 2,b + (1 + µ ) y 2,b + sy1,b + i2
Donde se representan dos células inhibiéndose mutuamente por el término ξ . En el caso que ξ
sea negativo esta célula será inhibida; en el caso contrario, si ξ es positiva excitará a la célula
correspondiente. Para que éste término sea positivo o negativo se sumará a la entrada inversora
si se quiere que sea inhibitoria o a la entrada no inversora si se quiere que sea de excitación. El
término ξ es una analogía al término Difusivo visto en (13) y estará representado en ese orden
para la generación de las Auto-Ondas
Escogiendo µ , s, i1 , i2 y ξ , de (15) el GCP Flexor–Extensor muestra un comportamiento
síncrono de anti-fase.
En la siguiente gráfica se muestra el comportamiento de dos células representando a las
ecuaciones en (28).
42
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Célula 1 y 2 Estados X1 con sinapsis inhibitoria y salida Y1 (Cap. 470uF)
2
Célula 1
1.5
Célula 2
1
X(Volts)
0.5
0
-0.5
-1
-1.5
-2
-2.5
0
2
4
6
8
10
t(seg.)
Figura 24.
Comportamiento de inhibición mostrando desfase de 180º de una célula con respecto a la otra.
3.2.4 Implementación electrónica de la célula para la RNC
En esta sección, los circuitos para la generación de auto-ondas se describen. La realización de
(28), escalado por el coeficiente de k=10-3 para la implementación de los circuitos, se puede
llevar a cabo usando amplificadores operacionales.
La Figura 25 representa la realización del circuito de una célula sencilla aislada de sus vecinas
y con los parámetros presentados en (15).
Figura 25.
Realización electrónica de una célula de la RNC
43
Capítulo III
cenidet
Los bloque B1 y B3 realizan las ecuaciones diferenciales de segundo orden, con la adición de
los términos bías i1=i2 , realizado con el mismo divisor de voltaje de la fuente de poder
esbozado en el bloque B0 . Los dos bloques restantes idénticos B2 y B4 realizan la salida no
lineal de la función (22) de cada una de las dos variables x1 y x2 mediante la saturación
característica de los amplificadores operacionales y añadiendo un divisor de voltaje para escalar
la saturación a salidas a valores deseados ( ±1V ) . En particular, R8, R10 , R11 y R12 son
escogidos tales que la salida del amplificador se satura cuando |x|>1. Las siguiente relaciones
explican la representación del comportamiento dinámico de los bloques B1 y B2:
C1 x1 = −
R
R
R7
R3
R
1
Vcc
x1 + 3 y1 − 3 y 2 + 3
R4 R1
R4 R5 R6 + R7 R4 R2
R4
R4 R2
y1 =
R8
R12
x1
R11 + R12 R10
(29)
Para − 1 < x1 < 1
y1 = 1
Para x1 > 1
y1 = −1
Para x1 < 1
(30)
Las ecuaciones correspondientes a los bloques B3 y B4 pueden ser derivadas de la misma
forma.
Las tolerancias de los componentes (10% para capacitores y 1% para resistencias) se utilizan
para la realización de los componentes del circuito.
La célula implementada electrónicamente se muestra a continuación. En el anexo se agrega el
diagrama principal del la célula.
Amplificador Operacional
Capacitores removibles
Resistencias de precisión
Figura 26.
Célula implementada electrónicamente
En la Figura 26 se observa una implementación física de una célula con 8 terminales. Cada
una de estas terminales se enlista a continuación:
1: GND (Tierra)
2: +Vcc (Voltaje de operación 12 V
3: -Vcc (Voltaje para el amplificador – 12 V)
4: Y1 (Salida del estado 1)
5: Y2 (Salida del estado 2)
44
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
6: Sinapsis inhibitoria (Entrada inversora del estado 1)
7: Sinapsis de excitación (Entrada no inversora del estado 1)
8: Estado X1 (De la célula 1)
Se observa en la Figura 26 los capacitores (removibles) que representan los dos estados de
cada célula. Esto para cambiar la constante de tiempo.
3.2.5 Red Neuronal Celular (RNC) para Robot Hexápodo.
Retomando las referencias [17][19], se propone un estructura de RNC que es la que desarrolla
el trabajo de GCP, y está formada por células conectadas mediante sinapsis inhibitorias o de
excitación.
Como se reporta en [21] la interconexión inhibitoria entre las dos células permite un desfase
entre los estados X1 de la célula uno con respecto al estado X1 de la célula dos.
En el siguiente esquema se muestra la implementación de la RNC con dos células [21][62].
I1
D1
D2
I2
I3
D3
Figura 27.
Inhibición de la célula 1 y 2 y viceversa en control en extremidades
En la Figura 28 se muestra la implementación electrónica de la RNC con dos células. En la
parte izquierda se muestra la RNC con la sinapsis inhibitoria (potenciómetro conectado a la
entrada inversora) y en la derecha se muestra la etapa de acoplo de señal a los
servomecanismos (servomotores).
Célula 1
Sistema de
acoplo de
señal
Potenciómetro
(Sinapsis)
Célula 2
Figura 28.
Implementación electrónica de la Células y la RNC con el acoplo de la señal a los sistemas de
actuación
45
Capítulo III
cenidet
3.3 Acoplamiento de señales a los sistemas de actuación
Ahora se tienen las señales que sirven como generadores de la locomoción en las extremidades
del robot. Por lo tanto para que puedan mapear la señal de salida de la célula a los sistemas de
actuación se tendrá que contar con algún control para el seguimiento de dicha trayectoria.
Estudiando el caso del problema y tomado los aspectos mencionados en los objetivos del
trabajo, se toma la decisión de utilizar servomotores de radio control que son motores que se
posicionan a cierto ángulo mediante un ancho de pulso específico (control interno); esto es, los
servomotores funcionan con un Modulador de Ancho de Pulsos (PWM) y esta señal controla al
motor para colocarlo en una posición deseada según el ancho del pulso. Por tanto sólo se
acoplará la señal de las células a un PWM (Sección 3.3.2)
Lo anterior nos lleva primero a estudiar el movimiento que tendrán las extremidades del robot
para indicar la posición de los motores.
También se explica la forma de acoplamiento de la señal de salida de la célula hacia los
servomotores.
3.3.1 Acoplamiento de patrones de movimiento en extremidades.
Al ver el comportamiento de la mayoría de los insectos en la forma de caminar se muestran al
menos dos movimientos principales que son cuando la extremidad está en el suelo y mueve
todo el cuerpo hacia delante y cuando está en el aire y hace el recorrido de regreso para así
formar un ciclo completo.
Esta combinación de movimientos para poder ser realizado puede resolverse de varias formas
utilizando la mecánica. Una de las primeras soluciones que se obtuvieron para poder resolver
este problema de locomoción fue presentado en [15] en el cual se mencionaba un mecanismo
de Biela-Manivela-Corredera que en principio con un solo grado de libertad (biela) pudiera
generar la locomoción en un extremidad.
En la Figura 29 se muestra el caso en el cual se resolvería el problema de la extremidad
utilizando un solo grado de libertad, esto es un solo motor por cada pata.
y
1
x
2
4
Figura 29.
46
3
Mecanismo de Biela-Manivela-Corredera para la solución a la locomoción de una extremidad.
1. Eslabón fijo, 2. Biela, 3. Manivela, 4. Corredera.
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Lo anterior muestra una solución práctica al momento de implementarlo, pero como se
mencionó anteriormente se tendrá que hacer un seguimiento de señal (oscilación) y de esta
forma el motor se encuentra completamente girando. Esto implica que el control interno para el
motor tendrá que ser de un tipo rotacional continuo, como por ejemplo los sensores de efecto
hall, que estarían revisando la posición del motor con respecto a la señal de control. Esto
implicaría un trabajo más elaborado al momento de la implementación. Si se piensa en los
servomotores podría ser una solución pero estos sólo se pueden posicionar en un ángulo de
180º. Sin embargo ellos traen internamente un control de posición modificado por PWM.
En la Figura 30 se muestra el comportamiento del servomotor modificando su posición por
medio de ancho del pulso (PWM).
Figura 30.
Funcionamiento del Servomotor.
Retomando de nuevo el movimiento que se presenta en los insectos y tomando en cuenta que
los servomotores se pueden posicionar sólo en un rango de 180º se da solución al problema
utilizando dos servomotores posicionados a 90º uno con respecto al otro (eje de rotación) para
que de esta manera en combinación conjunta de los dos movimientos pueda generar una
locomoción parecida al de los seres vivos (insectos) al momento de caminar.
En la Figura 31 se muestra el diseño de los servomotores y la colocación de los mismos para la
solución a la forma de las extremidades.
47
Capítulo III
cenidet
Figura 31.
Extremidad del robot hexápodo mediante servomotores.
De esta manera un servomotor servirá para posicionar la extremidad en un punto alto o bajo y
el otro servomotor servirá para colocar a la extremidad en una posición delantera o trasera (con
respecto al cuerpo del robot).
La combinación de estos dos grados de libertad resuelve el problema ya que el acoplamiento de
la señal hacia los servomotores será más sencilla de obtener y el movimiento generado por
estos dos motores se asemejará más al que se presenta en los seres vivos (insectos).
Para controlar estos dos grados de libertad se utiliza la misma célula de dos estados. Estudiando
la gráfica de la Figura 32 (copia de la Figura 19) se muestra un comportamiento natural que se
presenta en la dinámica de cada célula.
Simulación Célula 1 Salidas Y1 y Y2
2
Y1
Y2
1.5
1
Y(Volts)
0.5
0
-0.5
-1
-1.5
-2
A B CD
0
2
6
4
8
10
t(seg.)
Figura 32.
Señal a seguir de los servomotores
De aquí se observa que el patrón de oscilación muestra un tiempo de estado bajo mayor (de A a
B) que el del estado alto (de C a D). Vemos que pasa más tiempo en -1 V con respecto a 0 V
48
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
que en 1 V con respecto a 0 V. Recordando los patrones de caminar en el capítulo 1 se puede
ver que el tiempo que pasa la extremidad en el suelo es mayor que el tiempo que pasa cuando
hace el arqueo (swing). Este fenómeno se tomará en cuenta el momento de estudiar la
dinámica.
Retomando la gráfica de la Figura 32, si se hace que este tiempo de mayor duración se utilice
para que la extremidad del robot esté sobre el suelo (la pata se mueve hacia atrás con respecto
al cuerpo del robot) y el moviendo rápido para el arqueo (la pata se mueve hacia delante
rápidamente con respecto al cuerpo del robot) se podrá lograr en parte el movimiento de la
extremidad para la locomoción. Podemos observar que en la gráfica de la Figura 32 cuando
esté en -1 (punto A al B) la extremidad gira hacia atrás (con respecto al cuerpo del robot) y
cuando pasa a +1 la extremidad gira hacia delante (punto C al D) con respecto al cuerpo del
robot.
Por lo tanto se resuelve la parte donde se mueve la pata hacia delante y hacia atrás (que esto lo
hará el servomotor que estará colocado horizontalmente como se muestra en la Figura 31)
faltará la parte en que la pata se levanta y desciende para tocar el suelo.
De nuevo al observar la gráfica de la Figura 32 vemos que la señal Y2 sigue a la señal Y1 (sólo
una célula). Es de gran ayuda porque de esta manera el movimiento que se haga hacia arriba y
hacia abajo la extremidad, de igual forma se resuelve como se explicó anteriormente utilizando
el otro servomotor.
A
X2, Y2
D
X1, Y1
Suelo
B
C
Aire
Figura 33.
Gráfica de fase X1, X2 (Continua) y Y1, Y2 (Rayada y punteada) de una sola célula
En la gráfica de la Figura 33 se presenta el diagrama de fase de X1, X2, Y1 y Y2 de una célula
donde se observa el movimiento que tendrá la extremidad al momento de que las dos salidas
(Y1, Y2) son acopladas. Se muestra que en la parte indicada con línea rayada parte de la
trayectoria de la extremidad en el suelo y punteada parte de la trayectoria que esta en el aire. De
esta forma A, B, C, y D muestran el ciclo completo.
49
Capítulo III
cenidet
Figura 34.
Acoplamiento de las señales a una extremidad
De esta manera se puede realizar el movimiento de la extremidad del robot utilizando las dos
variables de estado (en este caso las salidas Y1 y Y2) de una célula. Al acoplar las dos señales
se tendrá un movimiento lento cuando la pata se apoye sobre el suelo (la pata se mueve hacia
atrás con respecto al cuerpo) y un movimiento rápido cuando la pata hace el arqueo en el aire
(cuando la pata se mueve hacia el frente con respeto al cuerpo del robot) para que de esta forma
se complete un ciclo de movimiento de una extremidad.
Extremo Trasero
Figura 35.
50
Posición Original
Extremo Delantero
Dinámica de Servomotores para 1er grado de libertad
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Extremo Superior
Figura 36.
Posición Original
Extremo Inferior
Dinámica de los servomotores para el 2do grado de libertad
3.3.2 Acoplamiento de señales de la célula a servomotores
Retomando la gráfica de la Figura 32 y la Figura 30 se tienen que acoplar las salidas Y1 y Y2 a
una señal de PWM. La metodología a tomar es la siguiente:
•
•
•
•
Para facilitar la generación del PWM se consigue un convertidor de voltaje a un
oscilador (VCO) que permitirá convertir la señal análoga de salida de Y1 o Y2 según
corresponda, a un oscilador de tal forma que pueda entrar en rango de 0.3ms a 1.2 ms
(Figura 30). El VCO (SG3524N) se designa para esta tarea y con los parámetros
correspondientes se asigna un rango de entradas para poder producir los anchos de
pulsos. En el anexo se indica la hoja de este circuito integrado.
En segunda instancia para generar el voltaje correcto para el VCO y producir los anchos
de pulsos para el funcionamiento del servomotor, la señal de salida de la célula tendrá
que hacer un desfase (Offset) hacia el rango positivo, ya que la entrada del VCO solo
admite voltajes positivos. El diagrama eléctrico se muestra en el anexo (Figura 57).
Una vez teniendo el voltaje desfasado en rango positivo (la salida de Y1 o Y2) se hace
una amplificación negativa para que el VCO trabaje en rango de 0V a -1V aprox.
(originalmente de -1 a +1) para que produzca un ancho de pulso de un rango 0.3ms a 1.2
ms aprox.
Por último se aplica un aislamiento de la señal de control a los servomotores. Un
circuito formado por un optoacoplador sencillo resolverá el problema. En la gráfica de
la Figura 37 se muestra la metodología terminada.
51
Capítulo III
cenidet
Osciloscopio Célula 1 Salida Y1 y Y2 con offset y amplificación negativa
5
Y1*
4.5
Y2*
4
3.5
X(Volts)
3
2.5
2
1.5
1
0.5
0
0
2
4
6
8
10
t(seg.)
Figura 37.
Señales Y1 y Y2 de una célula acoplada para el VCO. (amplificada negativamente y desfasada)
A continuación se presenta un esquema general de la implementación del circuito de una célula
y queda de la siguiente forma para una extremidad. Esta estructura (acoplamiento de señal
Figura 38) se repetirá dos veces justificado en la sección 3.2.5.
Figura 38.
Esquema general de una extremidad acoplada a una célula
Las siguientes gráficas muestran el desempeño del VCO generando la señal PWM con un ciclo
de trabajo 10 % (1 ms) de la gráfica (Figura 39) y de un 17.5% (1.7 ms) de la segunda gráfica
(Figura 40) tomando como frecuencia base oscilación de 10 ms (frecuencia óptima entre pulso
y pulso según fabricantes).
52
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
La modulación del acho de pulso repercutirá principalmente en el rango de posicionamiento del
servomotor; es decir, implica que si se quiere tener un rango mayor de desplazamiento de la
extremidad (un arqueo mayor), ya sea hacia adelante o hacia atrás, arriba o abajo, tendrá que
modificarse las resistencias indicadas para que pueda aumentar el voltaje de entrada al VCO y
por ende el ancho de pulso (ciclo de trabajo Figura 57).
Osciloscopio Salida Y1 y PWM para 1er GDL
3.5
Y1
PWM1
3
2.5
X(Volts)
2
1.5
1
0.5
0
-0.5
-1
0
0.5
1.5
1
2.5
2
t(seg.)
Figura 39.
x 10
-3
Señal de PWM para la salida Y1 de la célula
Osciloscopio Salida Y2 y PWM para 2do GDL
3.5
Y2
PWM 2
3
2.5
X(Volts)
2
1.5
1
0.5
0
-0.5
-1
0
0.5
1
1.5
t(seg.)
Figura 40.
2
2.5
x 10
-3
Señal PWM para cada salida Y2 de la célula
53
Capítulo III
cenidet
3.4 Sistema mecánico
Para el sistema mecánico se usan materiales al alcance, que se encuentren en el mercado y que
sean fáciles de manufacturar al momento de construirlo. En los objetivos planteados en el
Capítulo 1 se especifica que el diseño mecánico no aborda la resistencia de materiales, diseño
de elementos, estática, dinámica etc. Esto no representará un caso que se puntualizará o que se
tendrá que realizar a detalle.
El trabajo realizado solamente proyecta la utilidad de las RNC para la generación de patrones
de movimiento de un robot hexápodo; la construcción de un robot hexápodo que supliera las
necesidades para este trabajo será necesaria. De esta manera el diseño del robot hexápodo que
se representa es sólo para la implementación de las RNC. Ningún otro cálculo matemático se
realizó para el diseño del mismo.
Se presenta en la Figura 41 el Robot Hexápodo dibujado en 3D.
Figura 41.
Proyecto Robot Hexápodo
En la siguiente figura se muestra el servomotor adquirido para el proyecto. Tales servomotores
como se mencionó, son utilizados para proyectos de radio control. La hoja de datos también se
incluye en el anexo (Figura 62).
Figura 42.
54
Servomotor analógico para el control de 1 GDL
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
En las siguientes figuras se presenta armada una extremidad del robot hexápodo usando los
servomotores.
Figura 43.
Extremidad compuesta por dos servomotores
A continuación se muestra la estructura terminada del robot hexápodo
Figura 44.
Estructura terminada del robot hexápodo
En el anexo se muestra el plano de la estructura del robot, así como el plano de las
extremidades y de los motores.
55
Capítulo III
cenidet
3.5 Bibliografía
[15] J. Pérez “Primer avance de tesis: Control de un robot hexápodo usando 6 celdas
neuronales analógicas” CENIDET 2008
[17] P. Arena, L. Fortuna “Analog Cellular Locomotion of Hexapod Robots” IEEE Control
Systems Magazine, Vol. 22, Nº 6, Diciembre 2002.
[19] M. Frasca, P. Arena, L. Fortuna “Bio-inspired emergent control of locomotion systems”
World Scientific Series of Nonlinear Science. Series A Vol. 48.
[20] P. Arena, L. Fortuna, and M. Branciforte, “Reaction-diffusion CNN algorithms to
generate and control artificial locomotion” IEEE trans. Circuits Syst. I, vol. 46, Feb 1999.
[21] J. Pérez “Segundo avance de tesis: Control de un robot hexápodo usando 6 celdas
neuronales analógicas” CENIDET 2008
[34] P. Arena, L. Fortuna “Collective behaviour in cellular neural networks to model the
central pattern generator” Int. J. Syst. Sci. Vol.31 Nº 7, 2000.
[46] P. Arena, L. Fortuna, M. Frasca, and G. Sicurella, “An adaptive, self-organizing
dynamical system for hierarchical control of bio-inspired locomotion” IEEE Trans. Syst.,
Man, Cybern. B, vol. 34, no. 4, Aug 2004.
[47] P. Arena, M. Branciforte, and L. Fortuna, “A CNN-based experimental frame for patterns
and autowaves” Int. J. Circ. Theor. Appl., vol. 26, no. 6, 1998.
[53] P. Arena, S. Baglio, L. Fortuna, and G Manganaro, “Self-Organitation in a two-layer
CNN” IEEE Trans. Circuits Syst. I Vol. 45 1998
[56] V.I. Krisnsky, “Autowaves: Result, problems, outlooks, in Self-Organization: Autowaves
and Structure Far from Equilibrium”. Berlina: Springer-Verlag, 1984.
[57] D.M. Wilson “Genetic and sensory mechanisms for locomotion and orientation in
animals” AMER. Sci. Vol. 60, 1972.
[58] P.S.G. Stein “Motor systems, with specific reference to the control of locomotion” Ann.
Rev. Neurosci. 1978.
[59] R.L. Calíbrese “Oscillation in motor pattern-generating networks” Curr. Opin.
Neurobiol. Vol. 5 1995.
[60] H. Cruse, T. Kindermann, M. Schumm, J.Dean, and J.Schmitz “Walknet- A biologically
inspired network to control six-legged walking” Neural Networks Vol. 11 1998
[61] L. Chua, M. Hasler, G. Moschytz, and J. Neirynck, “Autonomous cellular neural
networks: a unified paradigm for pattern formation and active wave propagation” IEEE trans.
Circuits Syst. I, vol. 42, no. 10, Oct 1995.
[62] J. Pérez “Presentación de resultados R8: Control de un robot hexápodo usando 6 celdas
neuronales analógicas” CENIDET 2008
56
Capítulo 4
Resultados
Capítulo VI
cenidet
En esta sección se presentan los resultados obtenidos en laboratorio de la RNC implementada
electrónicamente.
La siguiente tabla enlista las pruebas realizadas al dispositivo [62]; en las primeras dos gráficas
se compara con las simulaciones realizadas en [21] en MatLab. El tiempo de simulación es de
10 segundos para cada prueba. Los elementos resistivos son de precisión y están montados
sobre protoboard.
Tabla 1. Tabla de pruebas realizadas
Nº de
Prueba
1
2
3
4
5
6
7
Nombre/Objetivo
Estados de la célula /
Comparar resultado con
las simulaciones
Salidas de la célula /
Comparar
resultados
con las simulaciones
Estados de las células /
No
existe
auto
organización
Estados de las células /
Existe auto organización
Estados de las células /
Existe auto organización
Estados de las células /
Existe seguimiento de
señal
Estados de las células /
Variación
de
la
velocidad
Célula 1
Célula 2
Estado
Salida
Estado
Salida
X1 X2 Y1 Y2 X1 X2 Y1 Y2

Sinapsis






ξ

Inhibitoria

ξ

Inhibitoria
variable

ξ

De excitación

ξ

Inhibitoria
 = Gráfica
ξ = Conexión de la sinapsis
4.1 Prueba 1: Estados X1 y X2 de una célula.
Como primera prueba se grafica los estados de la célula. Esto con el objetivo primeramente de
ver el comportamiento de ésta con los parámetros mostrados en (15). Es necesario estudiar esta
prueba porque de ello depende el funcionamiento primordial de toda la red para que se
produzca una oscilación. Se deduce que de no haberse tomado resistencias de precisión se
podrían llegar a una oscilación. De las gráficas de la Figura 45 y Figura 46 se observa que la
respuesta del osciloscopio es parecida a la de la simulación. En la gráfica de la Figura 46 se
muestra un tiempo muerto de 0.5 seg, haciendo caso omiso a ello, se obtiene una respuesta en
58
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
tiempo casi similar a la simulación. Esto se debe al modo de captura de datos del osciloscopio
ya que sólo toma un rango de datos. Este se ajusta para que encuadre con la respuesta simulada.
Simulación Célula 1 Estados X1 y X2
2.5
X1
X2
2
1.5
1
X(Volts)
0.5
0
-0.5
-1
-1.5
-2
-2.5
-3
0
2
4
6
8
10
t(seg.)
Figura 45.
Simulación del estado X1 y X2 de una célula
Osciloscopio Célula 1 Estados X1 y X2
2
X1
X2
1.5
1
X(Volts)
0.5
0
-0.5
-1
-1.5
-2
-2.5
0
2
4
6
8
10
t(seg.)
Figura 46.
Datos del osciloscopio del estado X1 y X2 de una célula
59
Capítulo VI
cenidet
Otro aspecto a observar es que en la gráfica del osciloscopio no se llega a los valores pico
mostrado en la simulación. Esto puede deberse a que los elementos utilizados para generar las
señales (elementos resistivos y capacitivos) tienen una tolerancia del +-5%.
En este tipo de pruebas se hace una comparación cualitativa de las señales generadas con
respecto a las simuladas. Esto es porque se están generando patrones de locomoción, y sólo se
enfocan en la auto organización de las redes al momento de acoplar las células.
4.2 Prueba 2: Salidas Y1 y Y2 de una célula.
Se observa una diferencia notable entre la simulación y la medición real. Se muestra que las
salidas Y1 de ambas gráficas no están al mismo nivel. Esto se debe a que la señal recortada del
estado X1 para la salida Y1 [17][19] se hace mediante amplificadores operacionales y
elementos resistivos. Estos elementos al tener tolerancias del +/- 5% en toda la célula genera
esta variación de voltaje.
Simulación Célula 1 Salidas Y1 y Y2
2
Y1
Y2
1.5
1
Y(Volts)
0.5
0
-0.5
-1
-1.5
-2
0
2
4
6
8
t(seg.)
Figura 47.
60
Simulación de la salida Y1 y Y2 de una célula
10
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Osciloscopio Célula 1 Salida Y1 y Y2
2
Y1
Y2
1.5
1
X(Volts)
0.5
0
-0.5
-1
-1.5
-2
0
2
4
6
8
10
t(seg.)
Figura 48.
Datos del osciloscopio de la salida Y1 y Y2 de una célula
De igual manera que en la prueba 1, existe un tiempo muerto pequeño en la gráfica del
osciloscopio al inicio; esto se debe a que cuando se graba la señal lo realiza haciendo un barrido
desde un cierto tiempo atrás y tiempo hacia adelante. Lo que se observa en la gráfica del
osciloscopio de la Figura 48 muestra 250 muestras para generar 10 segundos.
4.3 Prueba 3: Estado X1 de la célula 1 y estado X1 de la célula 2 sin conexión
de sinapsis
De esta prueba claramente se observa que, al no haber conexión entre las dos células no existe
una autoorganización en ellas. De esto podemos observar que a pesar de ser el mismo diagrama
para las dos células y los mismos dispositivos electrónicos, se muestra que no se comportan de
la misma manera. Esto es de ayuda para que al momento de conectar las dos células mediante
una sinapsis inhibitoria [17][19], pueda existir una autoorganización y así comprobar el
desempeño de las RNC aplicadas a robots caminantes.
61
Capítulo VI
cenidet
Osciloscopio Célula 1 y 2 Estados X1 sin sinapsis
2
Célula 1
Célula 2
1.5
1
X(Volts)
0.5
0
-0.5
-1
-1.5
-2
-2.5
Figura 49.
0
2
4
6
8
10
t(seg.)
Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2 (10 seg.)
En la gráfica de la Figura 50 se muestra un lapso de 10 segundos tomados durante un tiempo
aleatorio después del tiempo inicial, que al no haber conexión entre las células, conforme pasa
el tiempo, no existe una autoorganización entre ellas.
Osciloscopio Célula 1 y 2 Estados X1 sin sinapsis
2
Célula 1
Célula 2
1.5
1
X(Volts)
0.5
0
-0.5
-1
-1.5
-2
-2.5
10
Figura 50.
62
12
14
16
18
20
t(seg.)
Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2 (10 seg.
después)
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
4.4 Prueba 4: Estado X1 de la célula 1 y estado X1 de la célula 2 con sinapsis
inhibitoria tomada de la salida Y1 de la célula 1
Esta prueba es la más significativa de todas, ya que se muestra que conectando las dos células
mediante una sinapsis inhibitoria (tomada de la salida Y1 de la célula uno hacia la célula dos)
presenta una auto-organización de los estados de las células con un desfase casi de 180º
aproximadamente una con respecto a la otra [17]. Esto se logra modificando el valor de sinapsis
(resistencia variable Figura 28)
Osciloscopio Célula 1 y 2 Estados X1 con sinapsis (inhibitoria y salida Y1)
2
Célula 1
1.5
Célula 2
1
X(Volts)
0.5
0
-0.5
-1
-1.5
-2
-2.5
0
2
4
6
8
10
t(seg.)
Figura 51.
Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2 (con sinapsis)
Es aquí donde se demuestra el funcionamiento de la RNC para controlar robots. Con una
correcta conexión inhibitoria o excitación mostrada en (27) se puede organizar a las dos células
permitiendo controlar el desfase entre las señales y por lo tanto definir el tipo de andar, en
nuestro caso trípodo (Figura 2).
63
Capítulo VI
cenidet
4.5 Prueba 5: Estado X1 de la célula 1 y estado X1 de la célula 2 con sinapsis
inhibitoria variable tomada de la salida Y1 de la célula 1
En esta prueba demuestra el desempeño de la red cuando se varía la sinapsis entre ellas. El
resultado es notorio al observar los estados de las células, más cuando se hace el recorte de la
señal para generar Y1 de la célula 1 y Y1 de la célula 2 [17][19]. Se observa que se varían los
tiempos cuando se encuentra por encima y debajo del cruce por cero. Esto puede ser utilizado
cuando interviene una señal del exterior (por ejemplo obstáculo) y modifica la sinapsis.
Osciloscopio Célula 1 y 2 Estados X1 con sinapsis variable(inhibitoria y salida Y1)
Célula 1
Célula 2
3
2
X(Volts)
1
0
-1
-2
-3
0
2
4
6
8
10
t(seg.)
Figura 52.
Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2 (con sinapsis
variable)
4.6 Prueba 6: Estado X1 de la célula 1 y estado X1 de la célula 2 con sinapsis
de excitación tomada de la salida Y1 de la célula 1
Una de las pruebas necesarias es esta que muestra una autoorganización de las células. Es decir,
un seguimiento de una señal con respecto a otra. Lo anterior se logra tomando la salida Y1 de la
célula 1 y excitando a la célula 2 con Y1.
Si se quisiera seguir un mismo patrón, este tipo de conexión resultará eficiente ya que hace el
trabajo de seguimiento de una señal.
64
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Osciloscopio Célula 1 y 2 Estados X1 con sinapsis
2
Célula 1
Célula 2
2
1.5
1
X(Volts)
0.5
0
-0.5
-1
-1.5
-2
-2.5
0
2
4
6
8
10
t(seg.)
Figura 53.
Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2 (con sinapsis de
excitación)
4.7 Prueba 7: Estado X1 de la célula 1 y estado X1 de la célula 2 con sinapsis
inhibitoria tomada de la salida Y1 de la célula 1 pero cambiando la
constante de tiempo (RC)
Finalmente se muestra esta prueba importante que presenta el cambio de la constante de tiempo
RC mostrada en las ecuaciones de la célula en (29).De esta forma se observa que en la Figura
54 se disminuye la frecuencia de oscilación entre las células. Esto lleva a que se puede
disminuir la velocidad del caminar tan solo variando la constante de tiempo RC.
En este proyecto se construyó la célula para que pueda cambiarse la constante removiendo
solamente los capacitores de cada célula. Para todas las pruebas anteriores se utilizaron
capacitores de 220 μf. Para esta última prueba se utilizan capacitores de 470 μf.
En la gráfica de la Figura 54 se observa que disminuyen las oscilaciones cuando aumenta la
capacitancia.
65
Capítulo VI
cenidet
Célula 1 y 2 Estados X1 con sinapsis inhibitoria y salida Y1 (Cap. 470uF)
2
Célula 1
1.5
Célula 2
1
X(Volts)
0.5
0
-0.5
-1
-1.5
-2
-2.5
0
2
4
6
8
10
t(seg.)
Figura 54.
Datos del osciloscopio del estado X1 de la célula 1 y el estado X1 de la célula 2 (cambio de la
constante RC)
4.8 Bibliografía
[17] P. Arena, L. Fortuna “Analog Cellular Locomotion of Hexapod Robots” IEEE Control
Systems Magazine, Vol. 22, Nº 6, Diciembre 2002.
[19] M. Frasca, P. Arena, L. Fortuna “Bio-inspired emergent control of locomotion systems”
World Scientific Series of Nonlinear Science. Series A Vol. 48.
[21] J. Pérez “Segundo avance de tesis: Control de un robot hexápodo usando 6 celdas
neuronales analógicas” CENIDET 2008
[62] J. Pérez “Presentación de resultados R8: Control de un robot hexápodo usando 6 celdas
neuronales analógicas” CENIDET 2008
66
Capítulo 5
Conclusiones
Capítulo VI
cenidet
5.1 Conclusiones
El objetivo de este trabajo es introducir a las RNC basadas en una arquitectura analógica que
representa una alternativa de implementación para el control de movimientos de robots
caminantes. Se muestra también que la biología provee una fuente de ideas a diferentes
esquemas de control.
El desempeño del acoplamiento de estos conceptos es discutido en el trabajo y se demuestran
experimentalmente útiles en un prototipo de robot hexápodo.
El poder de las ecuaciones de Reacción-Difusión para generar Auto-Ondas como patrones de
control idóneos se discute y la implementación real del circuito se presenta. Procedimientos
inspirados biológicamente y la arquitectura de las RNC pueden dar a la ingeniería de control
marcos para un nuevo enfoque de implementación de estrategias de control de movimientos
principalmente cuando múltiples sistemas de actuación son usados. Procesos de innovación y
nuevas ideas inspiradas por la neurología, muestran que con algunos componentes de bajo
costo como los amplificadores operacionales se pueden implementar algoritmos de control.
En este trabajo se desarrolla una solución para un tipo de caminar específico que fue el trípodo.
Se demuestra que por la naturaleza del andar utilizando sólo dos células se puede resolver el
problema. Si se hubiera querido realizar otro tipo de andar es posible que con dos células no
hubiese podido resolver el problema, en este caso la implementación de más células sería
necesaria para generar las oscilaciones correspondientes al tipo de caminar.
Se concluye que las RNC son una herramienta alternativa al momento de generar locomoción
sin necesidad de crear trayectorias para las extremidades.
Algo importante de mencionar es que específicamente a este prototipo la implementación
analógica resulto viable, pero el momento de que querer escalarlo a un estado micro, el cambio
de capacitores o resistencias para las conexiones sinápticas resultará muy inapropiado.
Para algunas otras aplicaciones la implementación de las RNC puede hacerse mediante
electrónica digital la cual permitiría un menor número de dispositivos electrónicos al momento
de la implementación.
5.2 Aportaciones
Generar patrones de oscilación robustos para la generación de locomoción en robots
caminantes es una de las principales aportaciones de este trabajo. La utilización de nuevas
técnicas para generar control en robots caminantes fue mostrada.
Es importante mencionar que la aplicación de este nuevo paradigma de control puede ser
potencialmente útil al momento que el número de extremidades aumenta, ya que solamente se
pueden reproducir las células para cada nueva extremidad; en otros casos una nueva
reorganización tendrá que ser realizada.
La utilización de elementos de bajo costo para la implementación de modelos de ecuaciones
diferenciales es demostrada. El uso de amplificadores operacionales en modos de sumadores y
de integradores puede resolver este tipo de ecuaciones.
68
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
5.3 Trabajos futuros
Para trabajos futuros puede investigar la generación de diferentes tipos de caminar alternos al
desarrollado en este trabajo en un robot hexápodo. Algunos de estos trabajos se recapitulan en
[19] y muestran alternativas de solución para ello.
Existen dos opciones para cambiar el tipo de caminar en una RNC realizada en forma de GCP:
1) reconfigurar las NGML 2) modificar los parámetros de la plantilla de retroalimentación A
[47].
El primer acercamiento para cambiar el patrón de locomoción es usar diferentes células para
construir las NGML en forma de anillo y reorganizar las conexiones entre las patas y las células
[34]. Cuando las conexiones son reorganizadas para reconstruir una nueva NGML, las
conexiones entre las neuronas y sistemas de actuación son también reorganizadas así las
conexiones entre las patas y las células dependen del patrón de locomoción particular. La
estructura física es cambiada de un paso a otro paso, el cual puede ser un inconveniente para
robots autónomos.
Por ejemplo, en la Figura 55 el paso rápido de un Hexápodo utiliza el lazo de 6 células (C1C6) que cierra con a, el tipo de caminar medio utiliza 10 células (C1-C10) y cierra con b, a fin
el paso lento utiliza 12 células (C1-C12) cierra con c. Cada tiempo de un paso que es
intercambiado, las conexiones entre las patas y las neuronas motoras necesitan ser cambiadas.
Como en este caso particular se utilizan auto ondas, la propagación de ellas delimita el tipo de
caminar por medio del tiempo en que tarda la auto onda en propagarse por todo el anillo y por
la forma de conexión entre las extremidades.
Figura 55.
Conexiones entre las NGML y las extremidades del robot para realizar (a) paso rápido, (b) paso
medio, (c) paso lento.
69
Capítulo VI
cenidet
5.4 Bibliografía
[19] M. Frasca, P. Arena, L. Fortuna “Bio-inspired emergent control of locomotion systems”
World Scientific Series of Nonlinear Science. Series A Vol. 48.
[34] P. Arena, L. Fortuna “Collective behaviour in cellular neural networks to model the
central pattern generator” Int. J. Syst. Sci. Vol.31 Nº 7, 2000.
[47] P. Arena, M. Branciforte, and L. Fortuna, “A CNN-based experimental frame for patterns
and autowaves” Int. J. Circ. Theor. Appl., vol. 26, no. 6, 1998.
70
Capítulo 6
Anexos
72
Figura 56.
V10
12Vdc
R5
2k
-VCC
0
12Vdc
V1
R3
13k
VCC
Sinápsis exitatoria
Potenciometro de 1 Mohm
Sinápsis inhibitoria
Diagrama electrónico de una Célula
Y2
Y1
Y1
Y2
0
80.6k
R11
121k
R9
825k
R15
43.2k
R1
-VCC
0
10
0
V+
V+
8
OUT
V-
OUT
V-
121k
R8
R12
121k
VCC
+ 4
U2C
-
+ 4
U1A
-
11
VCC
11
R16
274k
3
LM324
2
-VCC
LM324
9
80.6k
R10
121k
R6
825k
R14
121k
R7
1
1k
R13
1k
R2
0
C4
220000n
X2
0
C3
220000n
X1
0
0
75k
R20
75k
R19
75k
R18
75k
R17
0
0
12
11
V+
OUT
V-
VCC
V+
OUT
V-
1000k
R21
VCC
+ 4
U2D
-
11
+ 4
U2B
-
R22
1000k
LM324
13
-VCC
R23
1000k
5
LM324
6
-VCC
1000k
R24
14
7
12.4k
R28
12.4k
R27
0
R25
1k
Y2
Y1
Capítulo VI
cenidet
6.1 Diagramas Electrónicos
Y1
274k
R29
VCC
OPTO
0 VCC
3
LM324
2
-VCC
+
U3A
-
274k
R30
1k
R36
5V
1
0.1k
R38
OUT
0
1k
R31
Ajuste de cero
(posición del servo 0º)
11
V4
V+
0
1k
R39
4N25
ISO1
+
U3B
OUT
4k
R35
7
1k
R33
0
-VCC
LM324
5V
0
9
10
VCC
-
+
U3C
Serv omotor
1
2
3
JP1
Resistencia de ajuste para el rango
de posicionaminetos del servo
(-45º a 45º)
VCC
5
LM324
6
-VCC
1k
11
V4
V+
4
OUT
V+
11
Figura 57.
1k
R34
V-
8
OPTO
VCC
1k
R37
1n
C5
5V
0
3
9
7
3
2
1
8
4
5
10
6
11
14
+5V_VREF
+VI
5V
Generador de PWM
a partir de un voltaje
analógico
SG3524_16P
GND
CL+_SENSE
CL-_SENSE
SHUTDOWN
RT
EMITTERA
EMITTERB
COLLECTORA
COLLECTORB
COMP
CT
OSC/SY NC
IN+
IN-
U4
0
1
L78L05_TO92
VOUT
GND
12
13
VIN
U6
2
R32
VCC
15
16
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Diagrama electrónico para el acoplo de la señal de control al servomotor
73
Capítulo VI
cenidet
6.2 Lista de material Electrónico, Mecánico y costos.
Para la construcción de la célula básicamente se utilizaron resistencias de precisión, capacitores
y amplificadores operacionales. En el diagrama eléctrico de la 0 se muestran los valores de las
resistencias.
Para el circuito de acoplamiento de la célula sólo se utilizaron, de nueva cuenta, amplificadores
operacionales para el Offset y amplificaciones, el SG3525 (VCO) y un acoplador óptico
(4N25).
El costo del proyecto se muestra la siguiente tabla:
Cantidad
2
4
12
3
1
Concepto
Implementación electrónica para las células 0
Implementación electrónica de la señal de
acoplamiento Figura 57
Servomotores de radio control* Figura 60
Sintra negro de 20 x 30 cm de 3 mm de espesor*
Figura 59
Kit de tornillos (varias medidas)
Total del prototipo
Costo por
Total
unidad
$ 40.00
$ 80.00
$ 30.00
$ 120.00
$ 180.00
$ 2,160.00
$ 35.00
$105.00
$ 50.00
$ 50.00
$ 2,515.00
*La descripción de los materiales se encuentra en la página www.robodacta.com (revisada en
Febrero del 2009)
74
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
6.3 Planos
Figura 58.
Plano del sistema completo del Robot Hexápodo
75
Capítulo VI
cenidet
Figura 59.
76
Plano de la base principal del robot hexápodo
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Figura 60.
Figura 61.
Plano del servomotor
Plano de una pata
77
Capítulo VI
cenidet
6.4 Hoja de datos
Figura 62.
78
Hoja de datos de servomotor vigor modelo SM-V001
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Figura 63.
Amplificador operacional LM324 utilizado en la célula
79
Capítulo VI
cenidet
Figura 64.
80
Generador de Ancho de Pulsos controlado por voltaje
“Generación de locomoción de un robot hexápodo usando dos células neuronales analógicas”
Figura 65.
Opto-acoplador para aislar la señal del servomotor
81
Descargar