63 Elizabeth Sede No Bustos

143
cenidet ® Centro Nacional de Investigación y Desarrollo Tecnológico Coordinación de Mecatrónica TESIS DE MAESTRÍA EN CIENCIAS Locomoción de un Robot Cuadrúpedo: Un Enfoque a Celdas Neuronales Analógicas Presentada por: Elizabeth Sedeño Bustos Ingeniero Electrónico por el I.T. de Cuautla Como requisito para la obtención del grado de: Maestría en Ciencias en Ingeniería en Mecatrónica Director de Tesis: Dr. Luis Gerardo Vela Valdés Co - Director de Tesis: Dr. Andrés Blanco Ortega Cuernavaca, Morelos, México Julio del 2011

Transcript of 63 Elizabeth Sede No Bustos

Page 1: 63 Elizabeth Sede No Bustos

cenidet ®

Centro Nacional de Investigación y Desarrollo Tecnológico

Coordinación de Mecatrónica

TESIS DE MAESTRÍA EN CIENCIAS

Locomoción de un Robot Cuadrúpedo: Un Enfoque a Celdas Neuronales Analógicas

Presentada por:

Elizabeth Sedeño Bustos

Ingeniero Electrónico por el I.T. de Cuautla

Como requisito para la obtención del grado de: Maestría en Ciencias en Ingeniería en Mecatrónica

Director de Tesis: Dr. Luis Gerardo Vela Valdés

Co - Director de Tesis: Dr. Andrés Blanco Ortega

Cuernavaca, Morelos, México Julio del 2011

Page 2: 63 Elizabeth Sede No Bustos
Page 3: 63 Elizabeth Sede No Bustos

cenidet

®

Centro Nacional de Investigación y Desarrollo Tecnológico Coordinación de Mecatrónica

TESIS DE MAESTRÍA EN CIENCIAS

Locomoción de un Robot Cuadrúpedo: Un Enfoque a Celdas Neuronales Analógicas

Presentada por:

Elizabeth Sedeño Bustos Ingeniero Electrónico por el I.T. de Cuautla

Como requisito para la obtención del grado de:

Maestría en Ciencias en Ingeniería en Mecatrónica

Director de Tesis: Dr. Luis Gerardo Vela Valdés

Co - Director de Tesis: Dr. Andrés Blanco Ortega

Jurado: Dr. Enrique Quintero Mármol Márquez – Presidente M.C. Wilberth Melchor Alcocer Rosado – Secretario

Dr. Luis Gerardo Vela Valdés – Vocal Dr. Andrés Blanco Ortega – Vocal Suplente

Cuernavaca, Morelos, México Julio del 2011

Page 4: 63 Elizabeth Sede No Bustos
Page 5: 63 Elizabeth Sede No Bustos

cenidet Aceptación del Documento de Tesis

i

Documento de Aceptación del documento de tesis

NO IMPRIMIR

Page 6: 63 Elizabeth Sede No Bustos
Page 7: 63 Elizabeth Sede No Bustos

cenidet Autorización de impresión de Tesis

iii

Documento Autorización de impresión de tesis

NO IMPRIMIR

Page 8: 63 Elizabeth Sede No Bustos
Page 9: 63 Elizabeth Sede No Bustos

cenidet Dedicatoria

v

DEDICATORIA

A ti DIOS, por no abandonarme. Gracias por ayudarme a levantarme en mis fracasos, por aprender de ellos y principalmente por permitirme realizar el sueño más

importante de mi vida.

A mis padres: con mucho respeto, gracias por quererme tal y como soy, por su apoyo y comprensión. Aquí tienen mi esfuerzo… tarde pero seguro… este triunfo es de

nosotros, gracias por apoyarme y creer siempre en mí… espero ser su orgullo.

A mis hermanas: Monse: Mi mani gracias por el apoyo incondicional que me brindaste todo este tiempo, por tu compañía, tus consejos, por los dias que me acompañaste en mis

desvelos.

Fide: Mi chikis por apoyarme en los momentos mas dificiles, por tus consejos, por escucharme, por acompañarme en mis desvelos y preocuparte por mi. Con mucho cariño les

dedico esta tesis.

A mis Abuelitos y Familia por su ayuda y sus consejos

Page 10: 63 Elizabeth Sede No Bustos
Page 11: 63 Elizabeth Sede No Bustos

cenidet Agradecimientos

vii

AGRADECIMIENTOS

Agradezco al Centro Nacional de Investigación y Desarrollo Tecnológico (CENIDET) y a todo el personal docente, administrativo y auxiliar por brindarme los medios necesarios para mi formación académica. A la Dirección General de Educación Superior Tecnológica (DGEST) por el apoyo económico brindado para poder realizar y culminar mis estudios de maestría. A mis profesores: Dr. Marco A. Oliver, Dr. Enrique Quintero, Dr. Carlos M. Astorga, M.C. Wilberth M. Alcocer, M.C. José Luis González, Dr. Luis Gerardo Vela, Dr. Andrés Blanco, Dr. Darius Szwedowicz, M.C. José Martín Gómez, M.C. Pedro R. Mendoza, Dr. Alberto López, M.C. Luis Gracia por todos sus conocimientos brindados. En especial deseo agradecer al Dr. Blanco y el Dr. Vela, mis asesores de tesis por toda la paciencia y su valioso tiempo, conocimiento que me sirvieron de gran ayuda. Gracias por todo el apoyo, considero que ustedes fueron mi mejor elección, porque me han servido como ejemplo y deseo contar siempre con su sabiduría y amistad. Al Dr. Enrique Quintero y M.C. Wilberth M. Alcocer, mis revisores de tesis por sus valiosos consejos y por las observaciones realizadas a este trabajo de tesis; ya que me ayudan hacer una gran profesionista. A la secretaría Roció y Nadia por el apoyo y consejos que me brindaron en este tiempo. A mis compañeros y amigos: Omar A. Ruiz, Miguel A. Carreola, Emmanuel Santiago, Aurelio Brizuela, Cesar Guzmán y Hugo Soto, con quienes compartí aulas, proyectos, tareas, desveladas, presión y angustia, les agradezco a todos ustedes el haberme permitido hacer equipo a su lado. En especial a Omar A. Ruiz por estar en esta etapa de mi vida, gracias por las risas y más risas, enojos, tristezas, por tu apoyo incondicional, consejos, juegos de volibol etc. Eres el mejor amigo que he tenido en mi vida. Siempre contaras conmigo. GRACIAS!!.

Page 12: 63 Elizabeth Sede No Bustos

Agradecimiento cenidet

viii

A mis compañeros de electrónica y mecánica: Rodolfo A. Vargas, Eusebio A. Martínez, Marlem Flores, Vicente Solano, Vicente A. Solano, Carmen Juárez, Irán Loeza, Miguel Beltrán, Tomas Higareda, Víctor Pavón, Antonio Ávila, Juan Paz. Gracias por su apoyo y amistad en esta etapa de mi vida. En especial a Rodolfo A. Vargas por tu apoyo incondicional en los momentos más difíciles de mi vida, los consejos que me brindaste en este largo camino. Por estar conmigo en las victorias y derrotas. Gracias por estos 7 años 9 meses de conocernos. Al Dr. Aguayo por sus sabios consejos, su amistad, por permitirme ser parte del equipo de futbol del CENIDET. Muchas Gracias. Al Dr. Abraham Claudio Sánchez por su apoyo que me brindo en mis estudios. A la Sra. Inés por ser una madre para mí en el tiempo que estuve en Cuernavaca, por sus consejos, por cuidarme cuando lo necesitaba y por escucharme.

Page 13: 63 Elizabeth Sede No Bustos

cenidet Contenido

ix

Contenido

Contenido .................................................................................................................................. ix

Resumen .......................................................................................................................................... xiii

Abstract ............................................................................................................................................. xv

Lista de Acrónimos ....................................................................................................................... xvii

Nomenclatura ................................................................................................................................. xix

Lista de Figuras............................................................................................................................... xxi

Lista de Tablas ............................................................................................................................... xxii

Capítulo 1 Introducción ................................................................................................................ 1

1.1 Antecedentes ........................................................................................................................... 2

1.2 Problema .................................................................................................................................. 8

1.3 Estado del Arte ....................................................................................................................... 8

1.4 Propuesta de solución .......................................................................................................... 10

1.5 Objetivos Generales y Particulares. ................................................................................... 10

1.6 Justificación ........................................................................................................................... 10

1.7 Metas ...................................................................................................................................... 11

1.8 Alcances y Limitaciones ...................................................................................................... 11

Capítulo 2 Generador Central de Patrones (GCP) .................................................................. 13

2.1 Principios Biológicos ............................................................................................................ 14

2.2 Generador Central de Patrones (GCP) .............................................................................. 15

2.3 Redes Neuronales Artificiales (RNA) ................................................................................ 16

2.3.1Aprendizaje en este tipo de neuronas ......................................................................... 18

2.3.1.1 Aprendizaje Supervisado ...................................................................................... 18

2.4 Modelo Matemático de las Redes Neuronales Celular (CNN) ...................................... 18

2.4.1 Modelo Matemático ...................................................................................................... 20

2.4.2 Simulación en MatLab ................................................................................................. 20

2.5 Simulación en ORCAD ........................................................................................................ 21

2.6 Cambio de Fase y Frecuencia ............................................................................................. 24

2.6.1 Fase .................................................................................................................................. 24

2.6.2 Cambio de Frecuencia................................................................................................... 27

Page 14: 63 Elizabeth Sede No Bustos

Contenido cenidet

x

Capítulo 3 Robot Cuadrúpedo .................................................................................................. 29

3.1 Definición y Clasificación .................................................................................................... 30

3.2 Tipos de Locomoción ........................................................................................................... 31

3.3 Caminado Estático y dinámico. .......................................................................................... 32

3.4 Disposiciones de patas en robots cuadrúpedos caminantes .......................................... 32

3.5 Centro de Gravedad (CG) ................................................................................................... 36

3.6 Diseño del Robot Cuadrúpedo ........................................................................................... 38

3.6.1 Diseño ............................................................................................................................. 38

3.6.1.1 Topes mecánicos ..................................................................................................... 38

3.6.1.2 Pies Anchos ............................................................................................................. 39

3.6.1.3 Fricción ..................................................................................................................... 39

3.7 Medidas del robot cuadrúpedo .......................................................................................... 41

3.8 Cálculos y Simulación del Robot y su CG ........................................................................ 41

3.9 Funcionamiento del Servomotor ....................................................................................... 43

Capítulo 4 Construcción, Pruebas y Resultados ..................................................................... 47

4.1 Elaboración de Piezas del Robot ........................................................................................ 48

4.1.1 Piezas elaboradas .......................................................................................................... 48

4.1.1.1 Cuerpo ..................................................................................................................... 48

4.1.1.2 Piernas ...................................................................................................................... 49

4.2 Ensamble completo del robot ............................................................................................. 50

4.3 Conexión de la CNN ............................................................................................................ 50

4.3.1 Desfase ............................................................................................................................ 50

4.3.2 Frecuencia ....................................................................................................................... 51

4.4 Interfaz CNN-Servomotor .................................................................................................. 52

4.4.1 Desarrollo del algoritmo .............................................................................................. 54

4.5 Pruebas................................................................................................................................... 61

4.5.1 Señal (Y1) del CNN con servomotor .......................................................................... 61

4.5.2 Señal de la CNN (Y1) con dos servos. ........................................................................ 62

4.5.3 Señales de la CNN (Y1 y Y3) con cuatro servomotores. .......................................... 62

4.5.4 Integración de las neuronas al cuerpo del robot ....................................................... 63

4.5.4.1 Señales de la CNN (Y1 y Y3) con el ensamble del robot ................................... 64

4.5.4.2 Cambio de frecuencia o cambio de caminado a trote. ...................................... 65

4.5.4.3 Locomoción en Rampa. ......................................................................................... 65

4.5.5 Receptor y transmisor ................................................................................................... 66

Page 15: 63 Elizabeth Sede No Bustos

cenidet Contenido

xi

4.6 Resultados Finales. ............................................................................................................... 68

Capítulo 5 Conclusiones ............................................................................................................. 69

5.1 Conclusiones ......................................................................................................................... 70

5.2 Contribución ......................................................................................................................... 70

5.3 Trabajos Futuros ................................................................................................................... 71

Referencia Bibliográfica ................................................................................................................. 73

Anexos ............................................................................................................................................. 77

Anexo A: Dibujo Robot Cuadrúpedo ...................................................................................... 79

Anexo B: Programa en C-Compiler ..................................................................................... 83

Anexo C: Circuitos Esquemáticos ............................................................................................ 95

Anexo D: Circuitos Impresos .................................................................................................. 101

Anexo D1 Disposición espacial de los componentes del robot...................................... 102

Anexo D2 Diseño del Transmisor ...................................................................................... 102

Anexo D3 Diseño del Receptor ........................................................................................... 103

Anexo D4 Diseño de la CNN 1 y 2 ..................................................................................... 103

Anexo D5 Diseño del Circuito Principal ........................................................................... 104

Anexo E: Hojas de Datos ......................................................................................................... 107

Page 16: 63 Elizabeth Sede No Bustos

Contenido cenidet

xii

Page 17: 63 Elizabeth Sede No Bustos

cenidet Resumen

xiii

Resumen

Recientemente los investigadores en robótica se han enfocado al estudio de

robots caminantes, ya que pueden generar locomoción en terrenos irregulares. La cual se puede conseguir mediante el enfoque biológico y el enfoque clásico. El enfoque biológico se define un conjunto de células denominadas Redes Neuronales Celulares (CNN) especializadas capaces de mostrar un comportamiento rítmico incluso en ausencia de estímulo, este grupo de células se encuentra en el sistema nervioso central (SNC).

En el presente tesis se mostraran ecuaciones de la CNN para generar locomoción en un robot cuadrúpedo. Las ecuaciones mostradas en este artículo reducen el número de neuronas de 6 a 4. Al modificar los parámetros de la CNN, el robot cambiará la locomoción (de caminado a trote) utilizando un transmisor. Esta red se implementa a un robot cuadrúpedo. La locomoción del robot fue probado en una rampa con diferentes tipos de ángulos.

Page 18: 63 Elizabeth Sede No Bustos

Resumen cenidet

xiv

Page 19: 63 Elizabeth Sede No Bustos

cenidet Abstract

xv

Abstract

Recently Robotics researchers have focused on studying walking robot´s, since they can generate locomotion on rough terrain. This may be gotten by two approaches, the biological and the classic approach. The biological approach is a set of cells called Cellular Neural Network (CNN); which is able to show a rhythmic behavior even in absence of stimulus, this set of cells is found in the Central Nervous System (CNS).

In this thesis we will show equations of the CNN to generate locomotion in a quadruped robot. The equations shown in this paper decrease the number of cells from 6 to 4. By modifying the CNN parameters, the robot will change its locomotion (from walking to jogging), by using a transmitter. This network is implemented in a quadruped robot. The robot's locomotion was tested in the ramps with different kinds of angles.

Page 20: 63 Elizabeth Sede No Bustos

Abstract cenidet

xvi

Page 21: 63 Elizabeth Sede No Bustos

cenidet Lista de Acrónimos

xvii

Lista de Acrónimos

µK Fricción Dinámica

µS Fricción Estática

ADC Convertidor Analógico - Digital

C Célula

CD Corriente Directa

CG Centro de Gravedad

CNN Red Neuronal Celular

D1 Pierna Derecha Delantera

D2 Pierna Derecha Trasera

GCP Generador Central de Patrones

GND Tierra

I1 Pierna Izquierda Delantera

I2 Pierna Izquierda Trasera

OFFSET Desviación del punto de referencia

PIC Controlador de Interfaz Periférico

PUMA Programmable Universal Manipulator for

Assembly

PWM Modulación por Ancho de Pulso

RNA Red Neuronal Artificial

SNC Sistema Nervioso Central

T Tiempo

Page 22: 63 Elizabeth Sede No Bustos

Lista de Acrónimos cenidet

xviii

Page 23: 63 Elizabeth Sede No Bustos

cenidet Nomenclatura

xix

Nomenclatura

Es la plantilla de retroalimentación (feedback template).

Es la plantilla de prealimentación, junto con A, llamada también plantilla

de control (control template).

Es el término de corriente de polarización (bias), usualmente una

constante.

Es la entrada del sistema.

Coordenadas

Es el estado de la neurona.

Es la salida de la neurona.

Volumen

Peso

Ganancia

Función de salida

Se refiere a la neurona en una malla de dos dimensiones.

Es la neurona con una vecindad de radio r de la

neurona.

Peso Especifico

Page 24: 63 Elizabeth Sede No Bustos

Nomenclatura cenidet

xx

Page 25: 63 Elizabeth Sede No Bustos

cenidet Lista de Figuras

xxi

Lista de Figuras Figura 1 (a) Numeración de piernas en animal cuadrúpedo, (b) tiempo, aire y suelo ....................... 3 Figura 2 Robot apoyo tres piernas ...................................................................................................... 7 Figura 3 Robot apoyo dos piernas ...................................................................................................... 7 Figura 4 Diagrama de bloques del funcionamiento de la propuesta de tesis. ................................. 10 Figura 5 Neurona Biológica. .............................................................................................................. 14 Figura 6 Esquema General del comportamiento en el andar en animales. ...................................... 15 Figura 7 Locomoción por medio de principios biológicos................................................................. 16 Figura 8 Neurona Artificial ............................................................................................................... 17 Figura 9 Simulación de la neurona. ................................................................................................... 20 Figura 10 Estado de una neurona X1y X2. ........................................................................................ 21 Figura 11 Salida de neurona Y1 y Y2. ............................................................................................... 21 Figura 12 configuraciones de amplificadores. .................................................................................. 22 Figura 13 Circuito eléctrico CNN. ...................................................................................................... 23 Figura 14 Salida del circuito y . ............................................................................................... 23 Figura 15 Salida para ecuacion (4) y (5) I=0 y J=1, 2, 3,…,6. ........................................................ 24 Figura 16 Conexión entre neuronas. ................................................................................................. 25 Figura 17 Señales de de la célula 1 y de la célula 2 del andar del hexápodo. ........................ 25 Figura 18 Conexión anillo entre cuatro neuronas............................................................................. 26 Figura 19 Conexión entre dos neuronas. .......................................................................................... 26 Figura 20 Señales del Sub CNN 1 (verde) y del Sub CNN 2 (rosa) desfasadas 180°. .............. 27 Figura 21 Señales con frecuencia 0.307Hz ........................................................................................ 27 Figura 22 Señales con frecuencia 0.571Hz ........................................................................................ 28 Figura 23 Clasificación de Robots. .................................................................................................... 30 Figura 24 Andar robot con tres piernas de apoyo. ........................................................................... 31 Figura 25 Andar robot con dos piernas de apoyo. ............................................................................ 31 Figura 26 Configuraciones de tipo de mamíferos. ............................................................................ 33 Figura 27 Configuración tipo reptil ................................................................................................... 34 Figura 28 Disposiciones geométricas utilizadas para obtener el máximo volumen de trabajo en el pie ...................................................................................................................................................... 34 Figura 29 Pierna tipo pantógrafo plano. ........................................................................................... 35 Figura 30 Pierna tipo ortogonal. ....................................................................................................... 35 Figura 31 Pierna tipo pantógrafo tridimensional cartesiano. ........................................................... 35 Figura 32 Centro de Gravedad (CG) de un cuerpo tridimensional ................................................... 36 Figura 33 Topes Mecánicos ............................................................................................................... 39 Figura 34 Dimensiones del pie .......................................................................................................... 39 Figura 35 Fricción pie concreto. ........................................................................................................ 40 Figura 36 Fricción Aluminio – aluminio. ............................................................................................ 40 Figura 37 Robot Cuadrúpedo Final. .................................................................................................. 41 Figura 38 Cálculo del CG del robot utilizando Solid Works. .............................................................. 42 Figura 39 Coordenadas del CG cuando un par de piernas están suspendidas en el aire mientras que las otras se encuentran en el suelo ................................................................................................... 43 Figura 40 Servomotor Hitec ® modelo HS-55 ................................................................................... 44 Figura 41 Funcionamiento de un servomotor .................................................................................. 45

Page 26: 63 Elizabeth Sede No Bustos

Lista de Figuras cenidet

xxii

Figura 42 Cuerpo del robot y orificios para los servomotores. ........................................................ 48 Figura 43 Cuerpo del robot. .............................................................................................................. 48 Figura 44 Tornillos ............................................................................................................................. 49 Figura 45 Piezas de las piernas.......................................................................................................... 49 Figura 46 Ensamble de las piernas .................................................................................................... 49 Figura 47 Ensamble cuerpo – piernas ............................................................................................... 50 Figura 48 Conexión de neuronas ...................................................................................................... 50 Figura 49 Señales de salida CNN 1 y CNN 2 ...................................................................................... 51 Figura 50 Señal de la CNN 1 y pie del robot ...................................................................................... 52 Figura 51 Diagrama de bloques con offset ....................................................................................... 53 Figura 52 Circuito OFFSET ................................................................................................................. 53 Figura 53 Señales con OFFSET ........................................................................................................... 53 Figura 54 Señales y programa ........................................................................................................... 55 Figura 55 Posición del servomotor ................................................................................................... 55 Figura 56 Servomotor ....................................................................................................................... 61 Figura 57 Dos Servomotores y Neurona. .......................................................................................... 62 Figura 58 Cuatro servomotores y neuronas ..................................................................................... 63 Figura 59 Robot y neuronas .............................................................................................................. 64 Figura 60 Cambio de Frecuencia ....................................................................................................... 65 Figura 61Locomoción en rampa........................................................................................................ 66 Figura 62 Receptor ............................................................................................................................ 67 Figura 63 Diseño FINAL del prototipo de robot cuadrúpedo controlado por CNN. ......................... 68 Figura 64 Morfología de un pato ...................................................................................................... 72 Figura 65 Cuerpo del robot con los 4 circuitos ............................................................................... 102 Figura 66 Circuito Transmisor (a) Altium (b) circuito en control remoto ...................................... 102 Figura 67 Receptor con Relevadores .............................................................................................. 103 Figura 68 Circuito de la CNN1 y CNN2 ............................................................................................ 104 Figura 69 Circuito Principal ............................................................................................................. 104 Figura 70 Unión de las cuatro placas .............................................................................................. 105

Lista de Tablas Tabla 1 Fricción de materiales (Coeficiente de rozamiento estático y cinemático). ........................ 40 Tabla 2 Cálculo del CG del robot con las 4 piernas en el suelo. ........................................................ 42 Tabla 3 Características principales del servomotor HS-55 ................................................................ 44 Tabla 4 Variación de frecuencia al cambio de capacitor .................................................................. 51

Page 27: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

1

Capítulo 1 Introducción

La robótica es la ciencia y la tecnología de los robots. Se ocupa del diseño, manufactura y

aplicaciones de los robots. La robótica combina diversas disciplinas como son: la mecánica,

la electrónica, la informática, la inteligencia artificial y la ingeniería de control. Otras

áreas importantes en robótica son el álgebra, los autómatas programables y las máquinas de

estados.

Page 28: 63 Elizabeth Sede No Bustos

Capítulo 1 Introducción cenidet

2

1.1 Antecedentes

Un robot es un dispositivo electrónico y generalmente mecánico que desempeña tareas

automáticamente, ya sea por medio de supervisión humana directa o a través de un

programa predefinido o siguiendo un conjunto de reglas generales [1].

Recientemente las investigaciones en robótica se enfocan hacia el desarrollo de

máquinas caminantes, debido a que en algunas aplicaciones se requiere de una

considerable movilidad, sobre todo cuando se tiene la necesidad de locomoción en

terrenos irregulares. Existen diferentes configuraciones en cuanto al tipo de

desplazamiento que llevan a cabo los robots. Una de ellas es la movilidad por medio de

piernas. Un robot con piernas puede estar compuesto de 6 piernas (hexápodo), 4 piernas

(cuadrúpedo), 3 piernas (trípodo), 2 piernas (bípedos o androides) o una pierna.

Entre las diferentes técnicas para el control de robots articulados se pueden

destacar dos tendencias: el enfoque clásico y el enfoque biológico. El enfoque clásico está

determinado por la física y las ecuaciones de cinemática inversa. Trata de obtener los

parámetros (posición, velocidad, etc.) de cada motor de las articulaciones, para colocar

cada extremidad del robot en una posición determinada a priori; este procedimiento

puede presentar inconvenientes como muchas operaciones y validez para una morfología

especifica. El enfoque biológico se basa en el “Generador Central de Patrones” (GCP) que

se define como un conjunto de células especializadas capaces de mostrar un

comportamiento rítmico incluso en ausencia de estímulo. Este tipo de conjunto de células

se encuentra en los sistemas nerviosos de los animales y existen una gran variedad, cada

uno orientado a una acción específica. Entre ellos está el CPG locomotor que controla el

ritmo locomotor y que ha servido para que aparezcan modelos artificiales para controlar

robots articulados; la ventaja es que actúan directamente sobre los músculos y existe una

sincronización entre ellos [2].

Por otra parte, al tratar de mover a un robot con piernas, se debe conocer su

posición en cada instante, y a su vez asegurar que el robot permanezca en equilibrio; para

esto se debe tomar en cuenta el número de patas, ya que entre menos sean, es más

complejo mantener el equilibrio; un claro ejemplo es el robot bípedo, al desplazarse

requiere necesariamente mantener el equilibro con una sola pata mientras la otra se

mueve, generando así una inestabilidad en cada paso. Para controlar este parámetro, se

analizan dos tipos de balance:

Page 29: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

3

El caminado estático o balance estático hace referencia a un sistema que

permanece balanceado manteniendo siempre su centro de masa verticalmente proyectado

sobre el polígono de soporte formado por sus bases de soporte; es por esto que mientras

un objeto permanezca en balance estático no se caerá. Tal es el caso del caminado estático

de un robot cuadrúpedo, en el cual cuando un pie se mueve el centro de masa no debe

estar fuera del área de soporte formada por los pies que continúan en contacto con la

tierra. [3]

Por otro lado el balance dinámico no funciona de esta manera. En este caso la

proyección vertical del centro de masa puede encontrarse fuera del área de soporte

formada por las bases del robot cuadrúpedo en periodos de tiempo. Esto permite que el

sistema presente cortos instantes de caída; sin embargo estos periodos de tiempo deben ser

pequeños y bien controlados para que el sistema no se torne inestable. [3]

En algunos casos, el proceso para el diseño de un robot ha sido delegado hacia la

imitación de estructuras del ambiente natural, especialmente para máquinas caminantes

donde las estructuras presentan poca simplicidad pero un amplio margen de

adaptabilidad. Por esta razón, algunos diseñadores de robots caminantes tratan de imitar

las criaturas de la naturaleza y, dependiendo de las tareas para las que serán destinadas,

tratar de imitar de la mejor forma posible las características de estas criaturas, creando

robots con mejores aproximaciones a éstos. Se investigó la locomoción de algunos

animales (mamíferos y reptiles), para dar una idea del diseño del prototipo que se

utilizará. La investigación se orienta solo en el caminado y al trote de animales ya que el

tema de tesis se enfoca a estos dos puntos. Los animales estudiados fueron los siguientes:

elefante, perro, jirafa, ñu, dragón de komodo y tortuga.

Para conocer el movimiento de las piernas de estos animales se toma en cuenta la

Figura 1 (a) donde I1 pertenece a la pierna izquierda delantera, I2 a la pierna izquierda

trasera, D1 pierna derecha delantera y D2 pierna derecha trasera. La Figura 1(b) indica el

tiempo (T) en el que la pierna esté en el aire (blanco) y tiempo que esté en el suelo (negro).

(a) (b)

Figura 1 (a) Numeración de piernas en animal cuadrúpedo, (b) tiempo, aire y suelo

T1 Tiempo

aire

suelo

Page 30: 63 Elizabeth Sede No Bustos

Capítulo 1 Introducción cenidet

4

Elefante

Caminado: El caminado que tiene el elefante es el siguiente:

T1: En el tiempo uno, las cuatro piernas (extremidades) se encuentran en el suelo.

T2: El segundo tiempo es mover I1, mientras que las demás están en el suelo.

T3: I2 está en el aire mientras I1, D1 y D2 se encuentran en el suelo.

El caminado del elefante es colocar en todo momento tres piernas en el suelo

formando un triángulo, mientras que la otra se encuentra suspendida en el aire.

T1 T2 T3 T4 T5

I1

I2

D2

D1

Trote: El trote del elefante es el siguiente

T1: En el tiempo uno las cuatro piernas (extremidades) se encuentran en el suelo.

T2: El segundo se mueve I1 y D2, mientras que I2 y D1 están en el suelo.

T3: I2 y D1 está en el aire, mientras I1 y D2 se encuentran en el suelo.

El trote del elefante es colocar dos piernas en el suelo formando una línea, mientras

que las restantes se encuentran suspendidas en el aire.

T1 T2 T3 T4 T5

I1

I2

D2

D1

Jirafa

Caminado: El caminado que tiene la jirafa se muestra a continuación:

T1: En el tiempo uno las cuatro extremidades se encuentran en el suelo.

T2: El segundo tiempo se mueve D1 y D2, mientras que I1 y I2 están en el suelo.

Page 31: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

5

T3: I1 y I2 están en el aire mientras D1 y D2 se encuentran en el suelo.

El caminado de la jirafa es colocar dos (I1 y I2) piernas en el suelo formando una

línea, mientras que las otras (D1 y D2) se encuentran suspendidas en el aire. Este

movimiento para el robot es muy difícil ya que perdería muy fácilmente el

equilibrio, como el centro de gravedad se encuentra fuera del área de apoyo

haciendo que caiga hacia un lado.

T1 T2 T3 T4 T5

I1

I2

D2

D1

Trote: El trote que tiene la jirafa es el siguiente:

T1: En el tiempo uno las cuatro extremidades se encuentran en el suelo.

T2 y T3: En estos tiempos se mueve I1 y D1, mientras que I2 y D2 están en el suelo.

Observe que en el T3 la pierna I1 ya se encuentra en el suelo, junto con I2 y D2,

mientras que D1 sigue en el aire.

T4 y T5: I2 y D2 están en el aire mientras I1 y D1 se encuentran en el suelo. Observe

que en el tiempo T5 la pierna I2 ya se encuentra en el suelo, junto con I1 y D1,

mientras que D2 sigue suspendida en el aire.

El trote de la jirafa es colocar dos (I2 y D2) piernas en el suelo formando un línea,

mientras que las otras (I1 y D1) se encuentra suspendido en el aire. El robot perderá

con facilidad el equilibrio ya que el área de apoyo se localiza en las piernas traseras,

por lo tanto el centro de gravedad se encontrará fuera de ésta.

T1 T2 T3 T4 T5 T6 T7 T8

I1

I2

D2

D1

Page 32: 63 Elizabeth Sede No Bustos

Capítulo 1 Introducción cenidet

6

Ñu

Caminado y trote: El caminado y el trote para el ñu es igual que el caminado de la

jirafa.

T1 T2 T3 T4 T5

I1

I2

D2

D1

Dragón de komodo y tortuga

Caminado y trote: El caminado y el trote de estos animales es el siguiente:

T1: El tiempo uno, las cuatro piernas (extremidades) se encuentran en el suelo.

T2: El segundo se mueve I1 y D2, mientras que I2 y D1 están en el suelo.

T3: I2 y D1 está en el aire, mientras I1 y D2 se encuentran en el suelo.

El caminado de estos animales es colocar dos piernas en el suelo, mientras que las

restantes se encuentran suspendidas en el aire. El trote es la misma secuencia lo que

cambia es la frecuencia.

T1 T2 T3 T4 T5

I1

I2

D2

D1

Hipopótamo

Caminado y trote: El caminado y el trote para el hipopótamo es igual que los reptiles,

solo que su morfología es diferente.

Page 33: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

7

T1 T2 T3 T4 T5

I1

I2

D2

D1

Con base en las secuencias de andar mostradas anteriormente, en la literatura se

encontraron dos tipos de locomoción en robots cuadrúpedos.

El primero coloca en todo momento el centro de masa del robot sobre el triángulo

de apoyo formado por los tres pies en contacto con el suelo, mientras el otro pie esta en

movimiento. Este tipo de caminado es del elefante (ver Figura 2). Las ventajas que tiene

este tipo de configuración es que nunca perderá el equilibrio ya que el centro de gravedad

se encuentra dentro del área de apoyo; una desventaja, es muy lento en su locomoción.

Figura 2 Robot apoyo tres piernas

Mientras que el segundo consiste en mantener en todo momento dos piernas del

robot en el suelo mientras las otras dos estan en movimiento, este tipo de locomocion lo

tiene el perro, la tortuga, dragón de komodo y el trote del elefante. La desventaja de este es

que llega a ser inestable, ya que el área de apoyo se reduce a una línea, la que forman las

piernas de apoyo. La ventaja de este es que su velocidad de locomoción es mayor, ya que

mueve dos piernas a su vez (Ver Figura 3).

Figura 3 Robot apoyo dos piernas

Page 34: 63 Elizabeth Sede No Bustos

Capítulo 1 Introducción cenidet

8

1.2 Problema Con base en los párrafos anteriores, se pueden identificar dos problemas: el primero

consiste en generar un patrón útil para la locomoción de un robot cuadrúpedo por medio

de una red neuronal celular (CNN); el segundo problema consiste en diseñar y construir

un robot cuadrúpedo capaz de mantener el equilibrio durante la locomoción generada

por el patrón de comportamiento de la CNN antes mencionada.

1.3 Estado del Arte

En esta sección se habla de los trabajos realizados empleando redes neuronales

analógicas.

En la literatura se pueden encontrar diferentes modelos matemáticos de redes

neuronales, como las redes neuronales con retropropagación a través del tiempo [4],

perceptrón multicapa (MLP, por sus siglas en inglés) [5], Redes neuronales Nv [5][6],

Redes neuronales celulares [7]; de estas últimas se tiene la ventaja de que pueden ser

implementadas usando amplificadores operacionales [8] lo que permite que su

construcción sea de bajo costo.

G. Calderón implementó redes neuronales analógicas para controlar un péndulo

invertido, donde comprobó que los controladores basados en redes neuronales analógicas

son adecuados para resolver este tipo de problema; también desarrolló una metodología

para el diseño [9].

E. Martínez implementó 3 celdas neuronales analógicas, donde se probó y evaluó

las RNA en el control del robot tipo PUMA (Programmable Universal Manipulator for

Assembly), con el fin de controlar el seguimiento de una trayectoria del robot [10].

Otras investigaciones muestran un conjunto de algoritmos que permiten a un robot

caminante de seis piernas realizar su desplazamiento mediante acciones no establecidas ni

periódicas. Este modo de caminar es conocido como: locomoción libre [11]. El desarrollo

de estos algoritmos utiliza técnicas de lógica difusa para la toma de decisiones. La

valoración de los algoritmos se realiza mediante la simulación del proceso de locomoción

Page 35: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

9

del robot. Así mismo, muestra un algoritmo de control neuronal utilizado para dirigir

adecuadamente la ejecución de la locomoción del robot.

En [12] se expone ideas generales sobre el diseño e implementación de un robot

cuadrúpedo, destinado al estudio de los métodos de locomoción en máquinas caminantes.

Se estudia el análisis cinemático y dinámico que permite obtener diversos parámetros que

se presentarán durante la locomoción del robot. En función de estos parámetros y de los

actuadores se realiza un ajuste al diseño original obteniéndose los planos finales para la

construcción.

En [13] se desarrolla un generador de locomoción de un hexápodo utilizando dos

células neuronales analógicas, donde el objetivo era emular el caminado de un ser vivo

con seis patas, utilizando redes neuronales analógicas.

En [14] se ilustra un método para la generación de patrones de movimientos

rítmicos con sistemas dinámicos no lineales. Usando el ángulo de fase de un oscilador

canónico con propiedades de ciclo limitado, manipulando un sistema dinámico

desequilibrado por medio de la incorporación de señales arbitrarias al objeto. Las salidas

de los sistemas dinámicos perturbados son usadas para el control del caminado de un

robot cuadrúpedo con 12 grados de libertad.

En [15] se presentan la simulación y resultados experimentales del caminado y

trote dinámico de un robot bípedo donde se propone un método híbrido de generador

central de patrones para la realización de estos movimientos.

En [16] se estudia el control dinámico de los parámetros del aparato locomotor a través de la aplicación de pulsos discretos de la estimulación eléctrica al generador central de patrones (CPG) de la locomoción. Se presentan los datos de un modelo de hardware del CPG demostrando que estimulación temporal causa desviaciones breves del límite del ciclo de actividad del CPG.

En [17] se analiza las características de la locomoción dinámica de un robot

cuadrúpedo para los fines del control de la locomoción. Además, existe los parámetros de

control, cada uno de ellos puede controlar la velocidad de avance. Con esos parámetros el

robot presenta cualitativamente diferente comportamiento durante la locomoción.

Page 36: 63 Elizabeth Sede No Bustos

Capítulo 1 Introducción cenidet

10

1.4 Propuesta de solución

Construir una CNN con cuatro neuronas basado en amplificadores operacionales

que permita generar un patrón oscilatorio para la locomoción de un robot cuadrúpedo

accionado por cuatro servomotores. El proceso general se describe en la Figura 4.

Figura 4 Diagrama de bloques del funcionamiento de la propuesta de tesis.

1.5 Objetivos Generales y Particulares.

Objetivos General: Evaluar el desempeño de las Redes Neuronales Celulares (CNN) en la

locomoción de un robot cuadrúpedo.

Objetivos particulares:

1) Hacer una revisión bibliográfica del tema de tesis.

2) Obtener, simular y construir el modelo de la CNN para 4 células.

3) Generar un cambio en el tipo de locomoción (caminado a trote).

4) Diseñar y construir un robot cuadrúpedo.

5) Probar la CNN con el robot cuadrúpedo.

6) Hacer el cambio de locomoción a distancia con un control remoto.

1.6 Justificación

El desarrollo de esta investigación se justifica ya que conlleva a:

Construir un robot cuadrúpedo que pueda ser utilizado para futuras

investigaciones en el Centro Nacional de Investigación y Desarrollo Tecnológico

(CENIDET).

Diseñar una CNN.

Implementar la CNN para generar locomoción en el prototipo de robot

cuadrúpedo.

RNC Electrónica Mecánica Locomoción

Page 37: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

11

1.7 Metas

La meta planteada para este proyecto es generar locomoción de caminado y trote mediante

el cambio de la frecuencia de la CNN en un robot cuadrúpedo.

1.8 Alcances y Limitaciones

Los alcances y limitaciones para este tema de tesis son los siguientes:

El diseño de la CNN será útil solo para generar locomoción para un tipo de andar

donde 2 piernas cruzadas se mantienen en el aire mientras que las otras 2 se

mantienen en el suelo, por lo que no será posible cambiar la secuencia de

movimientos de las piernas.

La velocidad de ambos tipos de locomoción del robot serán valores pre-

establecidos y fijos, por lo que no podrán variarse estas velocidades.

La locomoción del robot será eficiente solo en terrenos planos y con fricción.

La locomoción del robot solo podrá generarse en línea recta, por lo que no podrá

hacer cambios de dirección de manera independiente.

El cambio de locomoción podrá realizarse por medio de un control remoto.

Page 38: 63 Elizabeth Sede No Bustos

Capítulo 1 Introducción cenidet

12

Page 39: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

13

Capítulo 2 Generador Central de Patrones

(GCP)

Para generar locomoción en un animal, hay que tener en cuenta el cerebro; en el

cerebro se encuentra una pequeña parte llamada cerebelo, el cual se encarga de la

sincronización y el refinamiento de patrones motores y musculares complejos, y tiene un

papel directo en la elaboración del ritmo y del equilibrio, en la fluidez y la delicadeza de los

movimientos. Dentro de éste se encuentra un grupo de células, denominadas neuronas.

Para saber el comportamiento de éstas, es importante tener en cuenta su fisiología

para comprender cómo los matemáticos e ingenieros tratan de imitar los mecanismos de

almacenamiento y procesamiento de éstos.

Page 40: 63 Elizabeth Sede No Bustos

Capítulo 2 GCP cenidet

14

2.1 Principios Biológicos

El cerebro es uno de los órganos más complejos de los que dispone el ser humano

ya que su función es controlar todas las actividades que realizan cada uno de los órganos

del cuerpo, así como también es el encargado de desarrollar movimientos para realizar

todas las funciones.

El funcionamiento del cerebro se basa en el concepto de que la neurona es una

unidad anatómica y funcional independiente, integrada por un cuerpo celular del que

salen numerosas ramificaciones llamadas dendritas, capaces de recibir información

procedente de otras células nerviosas, y de una prolongación principal, el axón, que

conduce la información hacia las otras neuronas en forma de corriente eléctrica. Pero las

neuronas no se conectan entre sí por una red continua formada por sus prolongaciones,

sino que lo hacen por contactos separados por unos estrechos espacios denominados

sinapsis. La transmisión de las señales a través de las sinapsis se realiza mediante unas

sustancias químicas conocidas como neurotransmisores.

Figura 5 Neurona Biológica.

El sistema nervioso central (SNC) está constituido por el encéfalo y la médula

espinal; el SNC es el encargado de recibir y procesar las sensaciones recogidas por los

diferentes sentidos y de transmitir las órdenes de respuesta de forma precisa a los distintos

efectores.

Dentro del SNC se encuentra el Generador Central de Patrones (GCPs), es un

circuito neuronal complejo 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 de las neuronas a los distintos músculos implicados en un patrón de

movimientos. Los experimentos medulares con gatos han llegado a la conclusión de que

Page 41: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

15

este eferente oscilatorio activa primero las motoneuronas 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 [19].

El generador medular (GCP locomotor) es un mecanismo de la médula espinal que

consta de una red compleja de neuronas capaces de producir un comportamiento oscilante

(generación rítmica de actividad) que se cree que interviene en el control de ciertos

movimientos básicos de locomoción [19].

Figura 6 Esquema General del comportamiento en el andar en animales.

2.2 Generador Central de Patrones (GCP)

El GCP es un circuito neuronal de la médula espinal que es responsable por

actividad rítmica coordinada. Actualmente los biólogos asumen que el sistema nervioso

animal contiene un conjunto de células especializadas llamado GCP, más aún, existe una

gran variedad de GCP, cada uno orientado a una acción específica. Uno de ellos es el GCP

locomotor, que controla el ritmo de andar en mamíferos, ha cobrado una gran relevancia

Sistema Nervioso Central (SNC)

Generador Central de Patrones (GCP)

GCP Locomotor

Actuadores

Medio Ambiente

Retroalimentación Sensorial

Page 42: 63 Elizabeth Sede No Bustos

Capítulo 2 GCP cenidet

16

en los estudios Biomatemáticos y aplicaciones en Bioingeniería con la aparición de los GCP

artificiales en robótica.

El GCP Locomotor produce ritmos que controlan la actividad de los músculos para

el movimiento de extremidades. El problema de la coordinación se resuelve empleando

controladores que implementen los modelos matemáticos de éste y encontrando los

valores adecuados para sus parámetros. A diferencia del enfoque clásico como se dijo en

temas anteriores, los controladores bioinspirados no se basan en el conocimiento de las

posiciones de ciertos puntos en el espacio, sino que actúan directamente sobre las

articulaciones (ver Figura 7). Son por tanto más rápidos, generan movimientos más

naturales y requieren, en general, de menor potencia de cálculo.

Figura 7 Locomoción por medio de principios biológicos.

2.3 Redes Neuronales Artificiales (RNA)

Las redes neuronas artificiales (RNA) son un paradigma de aprendizaje y

procesamiento automático inspirado en la forma en que funciona el sistema nervioso de

los animales. Se trata de un sistema de interconexión de neuronas en una red que colabora

para producir un estímulo de salida.

El funcionamiento de las redes neuronales consiste en simular las propiedades

observadas en los sistemas neuronales biológicos a través de modelos matemáticos

recreados mediante mecanismos artificiales (como un circuito integrado). El objetivo es

conseguir que las máquinas den respuestas similares a las que es capaz de dar el cerebro

que se caracterizan por su generalización y su robustez.

Una red neuronal se compone de unidades llamadas neuronas. Cada neurona

recibe una serie de entradas a través de interconexiones y emite una salida. Esta salida

viene dada las siguientes funciones.

Page 43: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

17

Una función de propagación (función de excitación), por lo general consiste en la

suma de cada entrada multiplicada por el peso de su interconexión (valor neto). Si el peso

es positivo, la conexión se denomina excitatoria; si es negativo, se denomina inhibitoria.

Una función de transferencia (función de activación), que se aplica al valor

devuelto por la función de activación. Se utiliza para acotar la salida de la neurona y

generalmente viene dada por la interpretación que se quiere dar a dichas salidas. Algunas

de las más utilizadas son la función sigmoidea (para obtener valores en el intervalo [0,1]) y

la tangente hiperbólica (para obtener valores en el intervalo [-1,1]). Ver Figura 8.

Figura 8 Neurona Artificial

Las ventajas que tienen las RNA son las siguientes:

Aprendizaje: las RNA tienen la habilidad de aprender mediante una etapa que se llama

etapa de aprendizaje. Esta consiste en proporcionar a la RNA datos como entrada a su vez

que se le indica cuál es la salida (respuesta) esperada.

Auto organización: una RNA crea su propia representación de la información en su

interior, descargando al usuario de ésto.

Tolerancia a fallos: debido a que una RNA almacena la información de forma redundante,

ésta puede seguir respondiendo de manera aceptable aun si se daña parcialmente.

Tiempo real: la estructura de una RNA es paralela, por lo cual si esto es implementado con

computadoras o en dispositivos electrónicos especiales, se pueden obtener respuestas en

tiempo real.

Page 44: 63 Elizabeth Sede No Bustos

Capítulo 2 GCP cenidet

18

2.3.1Aprendizaje en este tipo de neuronas

El aprendizaje es el proceso por el cual una red neuronal modifica sus pesos en

respuesta a una información de entrada. Los cambios que se producen durante el proceso

de aprendizaje se reducen a la destrucción, modificación y creación de conexiones entre las

neuronas. En los sistemas biológicos existe una continua creación y destrucción de

conexiones. En los modelos de redes neuronales artificiales, la creación de una nueva

conexión implica que el peso de la misma pasa a tener un valor distinto de cero. De la

misma forma, una conexión se destruye cuando su peso pasa a ser cero.

El aprendizaje es esencial para la mayoría de las arquitecturas de redes neuronales;

por lo que la elección de un algoritmo de aprendizaje es un punto central en el desarrollo

de una red.

El aprendizaje implica que una unidad de procesamiento es capaz de cambiar su

comportamiento entrada/salida como resultado de los cambios en el medio.

2.3.1.1 Aprendizaje Supervisado

El aprendizaje supervisado se caracteriza porque el proceso de aprendizaje se

realiza mediante un entrenamiento controlado por un agente externo (supervisor,

maestro) que determina la respuesta que debería generar la red a partir de una entrada

determinada. El supervisor comprueba la salida de la red y en el caso de que ésta no

coincida con la deseada, se procederá a modificar los pesos de las conexiones, con el fin de

conseguir que la salida obtenida se aproxime a la deseada [9][20].

Por lo tanto una red neuronal analógica se entrena mediante el aprendizaje

supervisado, ya que requiere a un agente externo (persona o control remoto) para cambiar

los parámetros y así obtener la salida deseada.

2.4 Modelo Matemático de las Redes Neuronales Celular (CNN)

La unidad básica de una red neuronal celular es llamada célula (o celda). Contiene

elementos lineales (capacitor, resistencias) y no lineales (fuentes de corriente) y fuentes

independientes. La Red Neuronal Celular definida por Chua y Yang consiste en usar

circuitos dinámicos no lineales, localmente interconectados e idénticos. Usando un arreglo

Page 45: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

19

de 2 dimensiones, en una capa simple, entonces matemáticamente esta definición se

escribe como [9][10][21]:

(1)

La salida de la neurona se representa por:

(2)

Donde, es una función de salida no lineal, llamada también función de

umbral. Existe diferentes funciones de salida no lineales [10][22]: sigmoidea, unitaria,

gaussiana, etc. Se dice que si para cada neurona, entonces la CNN es autónoma.

Donde las ecuaciones (1) y (2):

Se refiere a la neurona en una malla de dos dimensiones.

Es la neurona con una vecindad de radio r de la neurona.

Es el estado de la neurona.

Es la plantilla de retroalimentación (feedback template).

Es la plantilla de prealimentación, junto con A, llamada también plantilla de control (control template).

Es la entrada del sistema.

Es el término de corriente de polarización (bias), usualmente una constante.

Es la salida de la neurona.

Una de las aplicaciones de las CNN es llevar a cabo la función de un Generador

Central de Patrones (GCP). Como se comentó anteriormente existen diferentes GCP. El

GCP Locomotor es un circuito neuronal que produce un patrón motriz rítmico sin

necesidad de sensores que retroalimenten o controlen.

Para esta investigación se empleó el modelo del GCP basado en las CNN

[21][23][27], las cuales se definen como una red de sistemas no lineales acoplados; estos

osciladores no lineales son con frecuencia idénticos, los movimientos realizados por cada

órgano son controlados por un simple oscilador, mientras que la coordinación entre los

diferentes órganos es llevada a cabo por las conexiones entre los osciladores.

Page 46: 63 Elizabeth Sede No Bustos

Capítulo 2 GCP cenidet

20

2.4.1 Modelo Matemático

Una manera de simplificar el enfoque de las CNN, para ser llevado a la

implementación del GCP Locomotor en un robot, es considerar al oscilador no lineal como

un circuito no lineal de segundo orden [27][21], hecho de dos celdas CNN de primer

orden.

Para poder implementar el GCP Locomotor, a partir de (1) se escoge , y la

función de salida (2) será una implementación lineal de la función de saturación.

Quedando de esta manera:

(3)

y

(4)

La característica más importante de la ecuación (3) es que al escoger sus parámetros

precisos su comportamiento como oscilador no lineal tiende a una dinámica lenta-rápida

(slow-fast). En otras palabras admite límites estables durante el ciclo. Los parámetros son

donde permite una dinámica lenta-rápida y un ciclo

estable [13][21][23], estos parámetros fueron utilizados por Arena y Chua para la

locomoción de un robot y J. Pérez.

2.4.2 Simulación en MatLab

Con las ecuaciones (3)(4), en conjunto con los parámetros mencionados

anteriormente se realizó una simulación utilizando el programa Simulink de Matlab ®, en

las siguientes figuras 9, 10, 11 se muestra el diagrama de la CNN y las gráficas obtenidas.

Figura 9 Simulación de la neurona.

Page 47: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

21

Donde el voltaje de salida es de 1.4Vpico a -2.5Vpico y para la salida es 1.8Vpico a

-2Vpico con un tiempo 50seg.

Figura 10 Estado de una neurona X1y X2.

La Figura 11 se muestra las gráficas de salidas de saturación ( y ) de las dos celdas

CNN, lo que hace esta última ecuación es cortar las señales y en .

Figura 11 Salida de neurona Y1 y Y2.

2.5 Simulación en ORCAD

Para implementar la ecuación (3) y (4) en la parte de electrónica se estudiaron los modos

de conexión de los amplificadores operacionales [18][24][25][26].

Page 48: 63 Elizabeth Sede No Bustos

Capítulo 2 GCP cenidet

22

Se tomaron los siguientes modos de conexión.

Diferencial

Sumador no inversor

No inversor

Figura 12 configuraciones de amplificadores.

Para realizar la neurona se basó en el arreglo mostrado en el artículo [21]. Para la

simulación de dicha CNN se utilizó el software ORCAD 10.5, donde se utilizan cuatro

amplificadores, en este caso se utilizó la matrícula LM334, en el cual uno está en modo

diferencial y uno en modo sumador no inversor, estos dos modos son para la ecuación (3),

mientras que para los dos en modo no inversor son para la ecuación (4) ver en la Figura 13.

En donde se obtuvo el siguiente resultado (Figura 14).

Page 49: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

23

Figura 13 Circuito eléctrico CNN.

Figura 14 Salida del circuito y .

La Figura 14 muestra la salida de dos células; como se puede observar las salidas

( y ) se encuentran desfasadas a 89.9° (1.569rad) con un voltaje pico máximo de 0.83V a

-0.89V, con una frecuencia para de 315.3mHz y Y2 de 315.9mHz. Está dos señales

genera patrones oscilatorios que servirá para la locomoción de dicho robot.

Page 50: 63 Elizabeth Sede No Bustos

Capítulo 2 GCP cenidet

24

2.6 Cambio de Fase y Frecuencia

Para este proyecto se optó por utilizar la locomoción del hipopótamo, el andar de

este es tener en todo momento dos piernas del robot en el suelo mientras las otras dos

están en movimiento. El desfase que hay entre el par de piernas es de 180° por lo que se

tiene que buscar una conexión entre neuronas donde tenga este desfase.

2.6.1 Fase

De acuerdo al tipo de andar seleccionado, el cual consiste en un movimiento de un

par de piernas que estén mecánicamente desfasadas 180° con respecto al movimiento del

otro par, para así no perder el equilibrio al andar. Esta diferencia de movimientos es

generada por dos señales que estarán desfasadas 180° una con respecto a la otra; para ello

existen dos tipos de conexiones entre neuronas [9] [10].

En el artículo de Maneesilp, Purahong y Sooraksa [28] se muestran señales de

salida de a . Donde se muestra que los movimientos de onda son continuos y muy

suaves. Como puede verse en la Figura 15, la fase de salida de cada célula tiene una

diferencia de fase alrededor de 30° entre una y otra, por lo tanto, se tiene una diferencia de

fase entre y de alrededor de 180°. Por lo tanto, se modifican las ecuaciones de estado

(3) y (4), para poder tener una mayor propagación de fase, y así obtener una diferencia de

fase de 180 ° entre y .

Figura 15 Salida para ecuacion (4) y (5) I=0 y J=1, 2, 3,…,6.

Este tipo de conexión se descartó debido a que aumentaría el número de neuronas,

por lo que aumentaría el tamaño del circuito y los componentes electrónicos.

Page 51: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

25

En el artículo de J. Pérez [13] conecta la salida de la primera célula con la entrada

de la segunda ver Figura 16; este tipo de conexión se llama sinapsis, donde la conexión

puede ser excitatoria o inhibitoria.

Figura 16 Conexión entre neuronas.

La gráfica que arrojó esta conexión es la siguiente (ver Figura 17). Como se puede

observar el desfase de estas dos señales ( célula 1y célula 2), no se encuentran en todo

momento a 180°, lo que puede hacer inestable para el robot cuadrúpedo, ya que el

caminado que se propuso implica 2 piernas en movimiento y dos fijas; tomando en cuenta

los círculos de referencia en la gráfica las señales no se encuentran desfasadas a 180°.

Figura 17 Señales de de la célula 1 y de la célula 2 del andar del hexápodo.

Por lo que se hizo una conexión tipo anillo con cuatro neuronas [13][28]

(conectando unas con otras formando un círculo por medio de un cable común), las

señales circulan en un solo sentido alrededor del círculo, la célula dominante ganará a las

otras y disparará para iniciar la propagación de la onda, ver Figura 18.

Page 52: 63 Elizabeth Sede No Bustos

Capítulo 2 GCP cenidet

26

Figura 18 Conexión anillo entre cuatro neuronas.

Utilizando la ecuación (3), para una conexión tipo anillo se obtiene el siguiente

conjunto de ecuaciones [28]:

( 5)

donde y son ganancias con valor de -0.5 (sinapsis 1) y -0.6 (sinapsis 2). Estas

ganancias se obtuvieron a prueba y error, para dar el desfase deseado.

La conexión entre neuronas que se mostró en la Figura 18, se realizó la simulación

en Simulink®. La Figura 19 muestra dos bloques nombrados Sub CNN1 y 2 dentro de cada

una de éstas se encuentran conectadas dos celdas. Los Sub CNN se conectan utilizando las

ganancias antes mencionadas. Las gráficas de estas dos señales se muestran en la Figura

20.

Figura 19 Conexión entre dos neuronas.

Como se observa en la gráfica las señales se encuentran desfasadas 180° entre ellas.

Esto ayudará para que un par de piernas estén en el suelo en un cierto tiempo, mientras

que el otro par se encuentran suspendidas en el aire en el mismo tiempo, y así el robot no

perderá el equilibrio.

Page 53: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

27

Figura 20 Señales del Sub CNN 1 (verde) y del Sub CNN 2 (rosa) desfasadas 180°.

2.6.2 Cambio de Frecuencia

En [13][28][29] se muestra que al modificar la resistencia y/o el capacitor que

forman parte de la célula, se tiene una constante de tiempo de carga del capacitor; esta

constante depende del valor de la resistencia conectada en serie con el capacitor, ya que la

resistencia limita la cantidad de corriente que puede fluir para cargar el capacitor,

logrando esto en un determinado tiempo. Por lo tanto entre más grande sean los valores

del capacitor y la resistencia, más tiempo se necesita para cargar el capacitor y menos

oscilaciones se tendrán a la salida de la célula (frecuencia). Esto ayudará a pasar de

caminado a trote de este robot.

En base a lo mencionado se cambió el valor del capacitor en la simulación, y se

obtuvieron las Figura 21 y 22. La Figura 21 muestra las señales con una frecuencia de

0.307Hz.

Figura 21 Señales con frecuencia 0.307Hz

Page 54: 63 Elizabeth Sede No Bustos

Capítulo 2 GCP cenidet

28

Al disminuir el valor del capacitor aumenta la frecuencia a 0.571 Hz, Figura 22

Figura 22 Señales con frecuencia 0.571Hz

Page 55: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

29

Page 56: 63 Elizabeth Sede No Bustos
Page 57: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

29

Capítulo 3 Robot Cuadrúpedo

Locomoción hace referencia al movimiento que realiza una persona, un animal, un microorganismo, un aparato o máquina para moverse de un lugar a otro, para trasladarse en el espacio. La locomoción varía en términos de forma, estructura, velocidad y otros elementos de acuerdo al tipo de sujeto al que hagamos referencia.

La locomoción proviene del fenómeno físico conocido como movimiento. Así, el movimiento siempre significa un cambio de posición en el espacio. La locomoción es el movimiento que permite que el sujeto (ya sea una persona o una máquina) se desplace y, además de adquirir otra posición, cambie de lugar. La locomoción es una posibilidad que sólo tienen los seres vivos y algunas máquinas o aparatos creados por el ser humano que, de todas maneras, deben contar con algún método de propulsión como motores o energía.

Page 58: 63 Elizabeth Sede No Bustos

Capítulo 3 Robot Cuadrúpedo cenidet

30

3.1 Definición y Clasificación

Un Robot es un dispositivo electrónico y generalmente mecánico; que desempeña

tareas automáticamente, ya sea de acuerdo a supervisión humana directa o a través de un

programa predefinido o siguiendo un conjunto de reglas generales. Actualmente hay

varias formas de clasificar los robots, una de ellas se muestra en la Figura 23 [1]:

Figura 23 Clasificación de Robots.

Para esta investigación se eligió el robot cuadrúpedo, las ventajas y desventajas que

tiene este robot es que son más estables y más fácil de controlar en comparación al robot

bípedo, es menos costoso ya que cuenta con menos número de piernas y consume menos

energía en comparación del hexápodo. Unas de sus desventajas es que dependiendo a su

morfología los robots pueden ser muy lentos al generar locomoción, esto se puede

solucionar con base al andar de animales y en los diferentes tipos de diseño de robots.

Robot

Fijos

Industriales

Médicos

Móviles

Robot con ruedas

Oruga

Con piernas

Hexápodo

Cuadrúpedo

Trípodo

Bípedo

Page 59: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

31

3.2 Tipos de Locomoción

En la literatura se encontraron tipos de andar donde los diseñadores y científicos se

basaron en la locomoción de los animales, a continuación se mencionará los tipos de andar

para un robot cuadrúpedo.

Existen dos tipos de andar para robots de este tipo, el primer andar es mantener la

estabilidad al colocar en todo momento el centro de gravedad (CG) del robot sobre el

triangulo de apoyo formado por los tres pies en contacto con el piso, en un período de

transición, ver Figura 24 [3]. La desventaja de este tipo de andar es, que al mover solo una

extremidad, el robot es lento. Pero es más fácil llevarlo a la estabilidad ya que siempre el

CG estará dentro el triángulo.

Figura 24 Andar robot con tres piernas de apoyo.

En segundo tipo de andar es mantener la estabilidad al colocar en todo momento el centro

de gravedad del robot sobre una línea de apoyo formado por dos piernas en contacto con

el piso, en un período de transición ver Figura 25. La desventaja de este tipo de andar

consiste en que es inestable, ya que el centro de gravedad estará sobre la línea.

Figura 25 Andar robot con dos piernas de apoyo.

Page 60: 63 Elizabeth Sede No Bustos

Capítulo 3 Robot Cuadrúpedo cenidet

32

El tipo de andar para este proyecto será la segunda opción (dos piernas de apoyo),

ya que el tipo de locomoción que se eligió fue del hipopótamo. Se escogió la locomoción

del hipopótamo porque al cambiar el tipo de andar (caminado a trote) solo aumenta su

frecuencia.

3.3 Caminado Estático y dinámico.

El caminado estático o balance estático hace referencia a un sistema que

permanece balanceado manteniendo siempre su centro de masa verticalmente proyectado

sobre el polígono de soporte formado por sus bases de soporte; es por esto que mientras

un objeto permanezca en balance estático no se caerá. Tal es el caso del caminado estático

de un robot cuadrúpedo, en el cual cuando un pie se mueve el centro de masa no debe

estar fuera del área de soporte formada por los pies que continúan en contacto con la

tierra. [3]

De otro lado el balance dinámico no funciona de esta manera. En este caso la

proyección vertical del centro de masa puede encontrarse fuera del área de soporte

formada por las bases del robot cuadrúpedo en periodos de tiempo. Esto permite que el

sistema presente cortos instantes de caída; sin embargo estos periodos de tiempo deben ser

pequeños y bien controlados para que el sistema no se torne inestable. [3]

3.4 Disposiciones de patas en robots cuadrúpedos caminantes

El diseño y la construcción de máquinas caminantes en parte ha sido posible

gracias a la información extraída de los movimientos que efectúan los animales al caminar.

De esta forma, se ha observado cómo la disposición de las patas en los reptiles suministra

una base muy estable, adecuada para realizar desplazamientos sobre lodos y pantanos.

Caso muy diferente a la situación que se presenta en los mamíferos, los cuales requieren

de un mayor control de estabilidad, pero solicitando un menor consumo de potencia para

soportar el cuerpo. Esta situación les resulta adecuada para desplazarse sobre terreno llano

a velocidades mayores que los reptiles.

Los robots caminantes pueden ser clasificados por el número de patas de que están

dotados y por la disposición que éstas presentan en el cuerpo, entendiendo por

disposición de las patas la localización de los puntos de fijación de las patas con respecto

al cuerpo, así como la orientación que éstas presentan. Se puede distinguir, en lo que

Page 61: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

33

representa a la orientación con respecto al cuerpo, básicamente tres tipos de disposición de

las piernas para un robot caminante[30]:

a) Disposición Frontal.- El plano principal de las

piernas se encuentra perpendicular a la

dirección de avance del vehículo.

b) Disposición Sagital.- El plano principal de las

piernas se encuentra situado paralelo a la

dirección de avance del vehículo.

c) Disposición Circular.- Las piernas se sitúan

alrededor del cuerpo, de forma radial

facilitando el desplazamiento en cualquier

dirección. Esta disposición no se encuentra en

la naturaleza.

En cada una de estas categorías, y en lo que se refiere a la forma de fijación de las

piernas al cuerpo, pueden encontrarse entre otras las siguientes configuraciones [30]:

a) Configuración tipo mamífero: Las pierena se encuentran colocadas debajo del

cuerpo, pudiendo presentar las rodillas de varias formas, ver Figura 26:

Figura 26 Configuraciones de tipo de mamíferos.

Page 62: 63 Elizabeth Sede No Bustos

Capítulo 3 Robot Cuadrúpedo cenidet

34

b) Configuración tipo reptil: Las piernas se encuentran colocadas a ambos extremos

del cuerpo, sobresaliendo las rodillas a los costados del vehículo, ver Figura 27.

Figura 27 Configuración tipo reptil

c) Configuración tipo arácnido: Las piernas se encuentran colocadas a ambos lados

del cuerpo, sobresaliendo las rodillas en la parte superior del vehículo.

Existen dos tipos de disposición básica utilizadas en el diseño de las piernas, que se

caracterizan por obtener el máximo volumen de trabajo del pie con la mínima estructura

de pierna. Se consideran tres grados de libertad en cada pierna y su disposición se ilustra

en la Figura 28 [30].

Figura 28 Disposiciones geométricas utilizadas para obtener el máximo volumen de trabajo en el pie

La configuración de tipo 1 sitúa el eje de la primera articulación perpendicular al

eje longitudinal del cuerpo, y paralelo a la dirección de la gravedad. Las otras dos

articulaciones se colocan de tal forma que la dirección de sus ejes coincide con la dirección

del eje longitudinal del cuerpo. Esta configuración es similar a la que presentan los

reptiles.

La configuración del tipo 2 coloca el eje de la primera articulación paralelo al eje

longitudinal del cuerpo, y los ejes de las otras dos articulaciones se colocan paralelos al eje

transversal del cuerpo, formando una configuración semejante a la de los mamíferos.

Al utilizar la configuración del tipo 1, la propulsión del cuerpo es realizada por la

primera articulación, cuando las patas están apoyadas, mientras que los desplazamientos

Page 63: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

35

de las otras dos articulaciones son pequeños. Por lo tanto, siempre que el terreno se

encuentre nivelado, el mayor desplazamiento tiene lugar alrededor de un eje que es

paralelo al eje de la gravedad, y por consiguiente no se efectúa ningún trabajo contra la

gravedad, aspecto que no se presenta en las otras dos articulaciones.

Existen básicamente tres tipos de piernas utilizados en los diseño de robots caminantes

[30].

1) Pantógrafo plano: con dos grados de libertad y una articulación de giro (tercer

grado de libertad) que une la pierna al cuerpo, ver Figura 29.

Figura 29 Pierna tipo pantógrafo plano.

2) Pierna ortogonal: esta configuración presenta la segunda y tercera articulación

perpendicular, y una articulación de giro que une la pierna al cuerpo (ver Figura

30).

Figura 30 Pierna tipo ortogonal.

3) Pantógrafo tridimensional cartesiano: utiliza tres articulaciones lineales, este tipo

de pierna ha sido utilizada en la construcción de los robots TITAN IV y

RIMHO.[30], ver Figura 31.

Figura 31 Pierna tipo pantógrafo tridimensional cartesiano.

Page 64: 63 Elizabeth Sede No Bustos

Capítulo 3 Robot Cuadrúpedo cenidet

36

3.5 Centro de Gravedad (CG)

El centro de gravedad (CG) es el punto de aplicación de la resultante de todas las

fuerzas de gravedad que actúan sobre las distintas porciones materiales de un cuerpo [34],

de tal forma que el momento respecto a cualquier punto de esta resultante aplicada en el

centro de gravedad es el mismo que el producido por los pesos de todas las masas

materiales que constituyen dicho cuerpo.

En otras palabras, el centro de gravedad (CG) de un cuerpo es el punto respecto al

cual las fuerzas que la gravedad ejerce sobre los diferentes puntos materiales que

constituyen el cuerpo producen un momento resultante nulo.

El centro de gravedad (CG) de un cuerpo tridimensional se obtiene dividiendo el

cuerpo en pequeños elementos y expresando que el peso del cuerpo actuando en CG es

equivalente al sistema de fuerzas distribuidas que representan a los pesos de los

elementos pequeños. Al seleccionar al eje y vector con un sentido positivo hacia arriba

(Figura 32) y representar con al vector de posición de CG, se escribe.

Figura 32 Centro de Gravedad (CG) de un cuerpo tridimensional

Si todos los cuerpos no están hechos de un material homogéneo, se observa que el

peso del cuerpo es equivalente al sistema de pesos elementales si se cumple las

siguientes condiciones:

(6)

Page 65: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

37

Si se incrementa el número de elementos y al mismo tiempo se disminuye el

tamaño de cada uno de ellos, se obtiene el límite:

(7)

Donde es el peso y suma de pesos elementales.

Si los cuerpos están hechos de un material homogéneo (que es el caso para este

proyecto) de peso especifico , la magnitud del peso de un elemento infinitesimal se

puede expresar en términos de volumen de dicho elemento y la magnitud del peso

total puede expresarse en términos del volumen total . Así, se escribe:

(8)

Sustituyendo a y a en la segunda de las relaciones (7), se escribe:

(9)

o, en forma escalar,

(10)

El volumen total concentrado en el centro de gravedad (CG) es igual a la suma de

los volúmenes de cada componente (solo para cuerpos homogéneos).

(11)

Centro de masa y centro de gravedad: El centro de masas coincide con el centro de

gravedad sólo si el campo gravitatorio es uniforme; es decir, viene dado en todos los

puntos del campo gravitatorio por un vector de magnitud y dirección constante.

Page 66: 63 Elizabeth Sede No Bustos

Capítulo 3 Robot Cuadrúpedo cenidet

38

Centro geométrico y centro de masa: El centro geométrico de un cuerpo material

coincide con el centro de masa si el objeto es homogéneo (densidad uniforme) o cuando la

distribución de materia en el sistema tiene ciertas propiedades, tales como simetría.

3.6 Diseño del Robot Cuadrúpedo

El diseño del robot cuadrúpedo pasó por diversas modificaciones, hasta obtener la

versión final la cual presentó mejores características de diseño, tal como, la estabilidad[31].

Estos diseños se elaboraron con el software SolidWorks. Cada una de las piernas del robot

tendrá dos grados de libertad, donde el primer eslabón (ante pierna) será controlada por la

CNN y el segundo (pierna) será un movimiento libre, en donde la posición dependerá de

la acción de la fuerza gravitacional. También se realizó la simulación del robot, para ver el

comportamiento que tendrá al generar locomoción, validar el diseño y llevarlo a la

implementación. El software en que se utilizó dicha simulación se llama ADAMS. A

continuación se mostrarán las modificaciones que se realizaron previos a su versión final

del diseño.

3.6.1 Diseño

En el primer diseño del robot, la simulación mostró una pérdida en el equilibrio

debido a que los topes mecánicos generaban un ángulo de apertura muy grande; un corte

en la pierna haría contacto con el tope para limitar la posición de ésta; la simulación

mostró que las piernas eran delgadas, haciendo que el área de soporte disminuyera, y

consecuentemente hacía que el centro de gravedad (CG) se encontrara fuera de esa área de

soporte. Con base en estos problemas se rediseñó el robot donde se rectificaron estos

problemas.

3.6.1.1 Topes mecánicos

Se calculó la ubicación de los topes mecánicos para permitir un ángulo de apertura

máximo de 30° con respecto al eje vertical, el cual es un ángulo menor al del diseño del

robot anterior, obteniendo así un mayor equilibrio, ya que se evita que las piernas estén

tambaleándose libremente. Se realizó una simulación para analizar el comportamiento del

robot con la nueva ubicación los topes, y los resultados fueron favorables ya que los topes

ayudan a que el mecanismo sea estable (ver Figura 33).

Page 67: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

39

Figura 33 Topes Mecánicos

3.6.1.2 Pies Anchos

Se utilizaron pies anchos con el fin de ampliar la zona de contacto con el piso y

evitar la pérdida de equilibrio lateral. Las dimensiones de estas piernas son 40mm x

30mm; ver Figura 34.

Figura 34 Dimensiones del pie

3.6.1.3 Fricción

La fricción es la fuerza que se opone al movimiento de una superficie sobre otra, o

a la fuerza opuesta al inicio de un movimiento; esto se origina por las imperfecciones entre

las superficies en contacto y estas imperfecciones pueden ser microscópicas, generando así

un rozamiento.

Es posible distinguir entre la fricción estática ( ), que es una resistencia que

necesita ser superada para poner en movimiento un cuerpo respecto al otro con que se

encuentra en contacto, y la fricción dinámica ( ), que es la magnitud constante que se

opone al movimiento cuando ya se inició.

Con base en lo anterior se analizó una tabla de coeficientes de rozamiento estático

y dinámico donde se explica la fricción de cada uno de los distintos materiales.

Page 68: 63 Elizabeth Sede No Bustos

Capítulo 3 Robot Cuadrúpedo cenidet

40

Tabla 1 Fricción de materiales (Coeficiente de rozamiento estático y cinemático).

Superficies en contacto

Cobre sobre acero 0.53 0.36

Acero sobre acero 0.74 0.54

Aluminio sobre acero 0.61 0.47

Caucho sobre concreto 1.0 0.8

Madera sobre madera 0.25-0.5 0.2

Madera encerada sobre nieve húmeda 0.14 0.1

Teflón sobre teflón 0.04 0.04

Articulaciones sinoviales en humanos 0.01 0.003

El material que se utiliza en el pie es de caucho y la superficie de desplazamiento es

el concreto, obteniendo así un coeficiente y [32]; esta fricción se genera

entre el suelo y el pie; el pie llevará un caucho sobre la parte inferior donde hace contacto

con el suelo.

Figura 35 Fricción pie concreto.

La fricción que se ejerce entre dos aluminios, el coeficiente estático ,

mientras que el coeficiente dinámico es el 30% del valor del coeficiente dinámico

[33].

Figura 36 Fricción Aluminio – aluminio.

Page 69: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

41

3.7 Medidas del robot cuadrúpedo

Las medidas del robot son las siguientes:

Medidas de cuerpo completo:

Base: 110 mm

Altura: 87mm

Ancho: 122mm

Medidas de la pierna:

Base: 40 mm

Altura: 72mm

Ancho: 30 mm

Figura 37 Robot Cuadrúpedo Final.

3.8 Cálculos y Simulación del Robot y su CG

Una vez terminado el diseño final del robot, se calculó el CG de cada una de las piezas

que conforma el robot. Primero se calcula el volumen de cada pieza, en la columna 4 se

multiplica el volumen por el número de piezas repetidas en el ensamble, la columna 5, 6 y

7 es la ubicación donde está el CG de la figura ( y ), en la columna siguiente se

multiplica el volumen por la distancia al eje de referencia ( y ), y al final se suman las

columnas 3, 8, 9 y 10. Después de obtener la tabla se pasa a la ecuación (11), donde se

obtiene las coordenadas del CG total en ( y ) (ver Tabla 2). Este valor calculado es

comparado con la simulación del robot (ver Figura 38) y ambas formas de calcular el CG

llegaron al mismo resultado. Estos cálculos se hicieron para verificar si el software arrojaba

bien los datos. En la Figura 38 (b) se observa que el CG se encuentra en el punto medio del

robot.

Page 70: 63 Elizabeth Sede No Bustos

Capítulo 3 Robot Cuadrúpedo cenidet

42

Tabla 2 Cálculo del CG del robot con las 4 piernas en el suelo.

No

de

pza.

Nombre

de la

pza.

No.pza/

8 Ante

pierna 1258.16 10065.28 0 -0.01 0 0 -100.6528 0

8 Pierna 1284.69 10277.52 0 -1.57 0 0 -16135.706 0 4 Base 1393.62 5574.48 -0.11 -0.97 0 -613.1928 -5407.2456 0 1 Cuerpo 29681.46 29681.46 58 14.02 0 1721524.68 416134.069 0

12 Tornillo

ante pierna

31.42 377.04 0 0 0 0 0 0

8 Tornillo pierna

25.13 201.04 0 0 0 0 0 0

8 Goma 125.85 1006.8 0 -3.13 0 0 -3151.284 0

=

33800.33

=

57183.62

=

1720911.49

=

391339.18

=

0

(a) (b)

Figura 38 Cálculo del CG del robot utilizando Solid Works.

Al colocar dos piernas en el aire y dos en el suelo el punto CG se recorrió hacia la

derecha, obteniendo las siguientes coordenadas (54.82, 13.59, 0) (ver Figura 39). Por lo

tanto se puede decir que al mover las extremidades del robot cambia las coordenadas del

CG.

Page 71: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

43

Figura 39 Coordenadas del CG cuando un par de piernas están suspendidas en el aire mientras que las otras

se encuentran en el suelo

Al terminar con el diseño del robot final se pasó a la simulación en el software MD

ADAMS; lo que se obtuvo fue que al generar locomoción el robot no perdió el equilibrio.

3.9 Funcionamiento del Servomotor

Los tipos de movimientos que requiere dicho robot demandan un posicionamiento

preciso en cada instante de tiempo lo cual lleva a sugerir el uso de un tipo de motor

específico: el servomotor.

El servomotor es un dispositivo pequeño que tiene un eje de rendimiento

controlado. Este puede ser llevado a posiciones angulares específicas al enviar una señal

codificada. Con tal de que una señal codificada exista en la línea de entrada, el servo

mantendrá la posición angular del engranaje. Cuando la señal codificada cambia, la

posición angular de los piñones cambia.

Las ventajas que tiene el servomotor a comparación de un motor de CD es la

siguiente, es un sistema de lazo cerrado, ya que tiene un detector (encoder) que permite

conocer su posición y/o velocidad. Capacidad de ubicación en cualquier posición dentro

de su rango de operación. Se mantiene estable en dicha posición. Velocidad variable

programable. Velocidad de arranque y paro programable. Posición precisa de paro

programada. Control de torque programado. Requiere de un pulso de onda cuadrada.

Page 72: 63 Elizabeth Sede No Bustos

Capítulo 3 Robot Cuadrúpedo cenidet

44

Mientras que el motor de CD es un sistema de lazo abierto, tiene una velocidad variable y

no tiene la capacidad de posicionamiento.

El movimiento del primer eslabón se llevó a cabo con un servomotor de la marca

Hitec ®, modelo HS-55. Se le realizaron pruebas de funcionamiento y par de fuerza para

garantizar su funcionamiento.

Figura 40 Servomotor Hitec ® modelo HS-55

Los servomotores son sumamente útiles en robótica. Los motores son pequeños,

como se observa en la Figura 40, tienen internamente una circuitería de control y tiene una

buena fuerza de torque para su tamaño. El servomotor HS-55 de Hitec ® tiene una fuerza

promedio de 1.1 Kg/cm a una alimentación de 4.8Vcd. Su potencia es proporcional a la

carga mecánica. Un servomotor, por consiguiente, no consume mucha energía. También

cuenta con tres alambres de conexión externa, uno es para alimentación 5Vcd (rojo),

conexión a tierra GND (negro) y el alambre amarillo es para la señal de control. Se

presentan las características principales en la Tabla 3.

Características Dimensiones

Características a 4.8 Volts:

Velocidad: 0.17 seg/60 grados.

Torque: 15.27 oz-in (1.1 Kg-cm).

Características a 6.0 Volts:

Velocidad: 0.14 seg/60 grados.

Torque: 18.05 oz-in (1.3 Kg-cm).

Peso: 8 gr.

Largo: 22.8 mm.

Ancho: 11.6 mm.

Alto: 24 mm.

Tabla 3 Características principales del servomotor HS-55

La fuerza motriz del servomotor tiene algunos circuitos de control y un

potenciómetro (una resistencia variable) ésta es conectada al eje central del servomotor.

Este potenciómetro permite a la circuitería de control supervisar el ángulo actual del

Page 73: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

45

servomotor. Si el eje está en el ángulo correcto, entonces el motor está apagado. Si el

circuito sensa que el ángulo no es el correcto, el motor girará en la dirección adecuada

hasta llegar al ángulo correcto. El eje del servomotor es capaz de llegar alrededor de los

180 grados, en algunos llega a las 210 grados, pero varía según el fabricante. Un

servomotor se usa normalmente para controlar un movimiento angular de entre 0 y 180

grados.

El cable de control se usa para comunicar el ángulo. El ángulo está determinado

por la duración de un pulso que se aplica al alambre de control. El servomotor requiere

ser alimentado por un pulso cada 20 milisegundos (ms). La longitud del pulso

determinará los giros del motor. Por ejemplo, un pulso de 1.5ms, hará que el motor se

torne a la posición de 90 grados (llamado posición neutral) si el pulso es menor de 1.5ms,

entonces el eje se acercará a los 0 grados. Si el pulso es mayor de 1.5ms, el eje se acercará a

los 180 grados (ver Figura 41 ). La duración del pulso tiene un rango de 0.6ms a 2ms. El

servomotor es lineal a lo largo de todo su recorrido.

Figura 41 Funcionamiento de un servomotor

Page 74: 63 Elizabeth Sede No Bustos

Capítulo 3 Robot Cuadrúpedo cenidet

46

Page 75: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

47

Capítulo 4 Construcción, Pruebas y

Resultados

Page 76: 63 Elizabeth Sede No Bustos

Capítulo 4 Construcción, Pruebas y Resultados cenidet

48

4.1 Elaboración de Piezas del Robot

Con base en el diseño que se mostró en el tema anterior, se adquirieron y elaboraron las

distintas partes que conforman la totalidad del robot.

4.1.1 Piezas elaboradas

4.1.1.1 Cuerpo

Para la elaboración del cuerpo del robot, se compró un trozo de placa de aluminio

y se cortó con una forma que, al darle los dobleces necesarios, se formara un prisma

rectangular; una vez cortado se procedió a realizar unos orificios donde están colocados

los servomotores, como se muestra en la Figura 42.

Figura 42 Cuerpo del robot y orificios para los servomotores.

Se doblaron las paredes del cuerpo quedando como se muestra en la Figura 43.

Figura 43 Cuerpo del robot.

Finalmente, para que el cuerpo del robot quedara unido, se instalaron tornillos que harán

la función de unión de las paredes del cuerpo para mantener su forma.

Page 77: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

49

Figura 44 Tornillos

4.1.1.2 Piernas

Para la elaboración de las piernas se hicieron tres tipos de cortes que se utilizaron

como ante pierna, pierna y pie del robot así como se muestra en la siguiente figura.

Figura 45 Piezas de las piernas

Al término de esto, se ensamblaron las piernas, tomando en cuenta los topes que

hay entre la ante pierna y pierna que en este caso se utilizó como tope los tornillos y en la

parte de la ante pierna se utilizaron tornillos para colocar la flecha del servomotor.

Figura 46 Ensamble de las piernas

Page 78: 63 Elizabeth Sede No Bustos

Capítulo 4 Construcción, Pruebas y Resultados cenidet

50

4.2 Ensamble completo del robot

Teniendo el cuerpo del robot, con los servomotores dentro, se integraron las

piernas del robot al mismo. Esto se hizo centrando el eje superior de giro de la pierna con

el eje de giro del servomotor, unido por una pieza de plástico y atornillada a la flecha del

servomotor.

Figura 47 Ensamble cuerpo – piernas

4.3 Conexión de la CNN

4.3.1 Desfase

Como se mencionó en los temas anteriores, la opción que se utilizó fue conectar dos

células con la ayuda de dos resistencias de 1MΩ como se muestra en la Figura 48. En ésta

se muestra que la salida ( ) de la CNN 1 está conectado con una resistencia con la

CNN 2 en modo inhibitoria, y la segunda está conectada de la misma manera, esto nos

ayudará para que ambas señales de las células estén desfasadas 180° y así mover las

extremidades del robot y no pierda el equilibrio en el andar. Estas señales se muestran en

la Figura 49. Cuando las señales son conectadas, estas se auto organizan.

Figura 48 Conexión de neuronas

Page 79: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

51

Como se puede ver en la Figura 49 la señal rosa es la salida de la CNN 1 y el azul la salida

de la CNN 2.

Figura 49 Señales de salida CNN 1 y CNN 2

4.3.2 Frecuencia

Para el cambio de un caminado a trote, es necesario cambiar la frecuencia de oscilación de

las señales de salida de las neuronas. Para esto se debe cambiar el valor de los capacitores

que se encuentran en la neurona; para ello se hizo una prueba de varios capacitores y se

obtuvieron los siguientes resultados.

Tabla 4 Variación de frecuencia al cambio de capacitor

Capacitor Frecuencia [Hz] Periodo[s]

470µF (50V) 0.1184 8.442

330 µF (25V) 0.1727 5.789

220 µF (25V) 0.2705 3.702

100 µF (50V) 0.5427 1.840

47 µF (50V) 1.255 0.7971

33 µF (160V) 1.790 0.5585

22 µF (63V) 2.424 0.4125

4.7 µF (63V) 12.11 0.08256

La frecuencia del caminado del hipopótamo es de 588mHz y la frecuencia del trote

es de 1.7692Hz. Estas frecuencias se obtuvieron por medio de dos videos que se anexaron

en el CD de esta tesis. Con base en los resultados mostrados anteriormente se escogió el

capacitor con la frecuencia aproximada esta locomoción, que son el de 100 µF para el

caminado y 33µF para el trote.

Page 80: 63 Elizabeth Sede No Bustos

Capítulo 4 Construcción, Pruebas y Resultados cenidet

52

4.4 Interfaz CNN-Servomotor

Para explicar el comportamiento que tienen las piernas del robot con respecto a las

señales de las neuronas, se utilizará las señales de la Figura 50.

Cuando la señal rosa está en -1V la pierna del robot estará apoyándose en el suelo,

y cuando va incrementando el voltaje hasta llegar a 1V, la pierna se levantará hasta llegar a

un ángulo determinado.

Figura 50 Señal de la CNN 1 y pie del robot

Como los servomotores trabajan con PWM (modulación por anchura de pulso) que

consiste en generar una onda cuadrada en la que se varía el tiempo que el pulso está a

nivel alto, manteniendo el mismo período, con el objetivo de modificar la posición del

servomotor según se desee. Para generar estos pulsos es necesario convertir la señal

analógica de cada célula a digital, para ello se utilizó un PIC 18F1320 ya que contiene

ADCs (convertidores analógicos digitales) y así generar el PWM. Pero como el micro-

controlador solo recibe voltajes positivos, se debe aplicar OFFSET en ambas señales

analógicas, manteniendo la forma de la señal con la misma magnitud y cuyo valor de

voltaje mínimo sea cero volts, (ver Figura 51) y así poder aplicar el convertidor.

Page 81: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

53

Figura 51 Diagrama de bloques con offset

Para construir el circuito (OFFSET) se utilizó un amplificador LM324 ya que éste

consta de cuatro amplificadores operacionales, que se utilizaron en modo sumador e

inversor, estos dos modos son para una sola salida, como se muestra en el siguiente

circuito (ver Figura 52). Al variar la resistencia R5 aumenta o disminuye el offset y así

montarse las señales en cero volts (ver Figura 52).

Figura 52 Circuito OFFSET

Figura 53 Señales con OFFSET

R1

10k

R2

10k

R3

10k

R4

10k

R5

10k

R6

1k

R7

1k

R8

121k

00

VCC23

VCC23

-VCC24

V3

FREQ = 500mHzVAMPL = 1VOFF = 0

00

-VCC24

VCC23

V

VV

0

U4A

LM324

+3

-2

V+4

V-

11

OUT1

U4B

LM324

+5

-6

V+4

V-

11

OUT7

Page 82: 63 Elizabeth Sede No Bustos

Capítulo 4 Construcción, Pruebas y Resultados cenidet

54

Una vez que se montaron las señales, se implementó el convertidor analógico –

digital (ADC) y PWM para ello se utilizó un micro-controlador PIC18F1320 que incluye la

función de conversión analógica digital. Para ello se realizó el siguiente programa Anexo

B; el programa se realizó en el compilador C-compiler.

4.4.1 Desarrollo del algoritmo

La primera parte consiste en convertir las señales analógicas a digital, por lo que se

utiliza ADCs; el valor máximo que puede recibir un ADC son 255 que equivalen a 5V

analógico, y el mínimo es cero su equivalente es cero volts analógicos; lo que hace es tomar

el dato (señal 1) que entra en ADC0, espera un ciclo de instrucción (que tarda ocho

microsegundos) que es el tiempo requerido para que el micro-controlador realice la

conversión, se toma el dato de la señal 2 y se coloca en la variable pot1a y se realiza

nuevamente la operación con el ADC1 y el dato se asigna a la variable pot2a. Estos datos

se utilizarán para mantener el tiempo en alto del pulso requerido de PWM.

La conversión del ADC arroja valores de acuerdo a la entrada analógica

proveniente de las neuronas; cuando la señal analógica está en su valor más alto que es

1.7V (87 salida del ADC aproximadamente), el servomotor se posicionará a 30 grados de

su valor neutro, este ángulo se requiere para que el robot no pierda el equilibrio, al generar

locomoción.

set_adc_channel(0); delay_us(10); pot1a=read_adc(); set_adc_channel(1); delay_us(10); pot2a=read_adc();

En la Figura 54 se muestran las señales analógicas generadas por la red neuronal, en

el programa se les da el nombre de pot1a y el pot2a. El ADC nos arroja datos de cada una

de ellas en diversos instantes de tiempo, siendo ahí donde surgen tres condiciones, la

primera si pot1a es mayor que pot2a, la segunda es si pot2a es mayor que pot1a, y la

tercera si pot1a y pot2a son iguales.

Page 83: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

55

Figura 54 Señales y programa

Por lo que en el programa se utilizaron estas tres condiciones para estos casos. Para

esto es necesario que las salidas del PIC (B0, B1, B2 y B3) se inicialicen en alto (uno lógico)

para que trabajen en paralelo, ya que si no trabajan de esta manera los datos de salida de

PWM estarán desfasados y por lo tanto las posiciones del servomotor no serán las

adecuadas.

Para que la flecha de un servomotor adquiera una posición a cierto ángulo, es

necesario mantener en alto a un cierto tiempo (en microsegundos) el pulso del PWM, ver

Figura 55; por esto se necesita que la flecha del servomotor esté en posición vertical

(neutral), ya que la posición en la que se colocaron los servomotores en el cuerpo están en

vertical, igual que las piernas, por lo que la referencia de posición es ésta. Y en base a esto

el programa partirá del 0 ° (1500µs) a 30 ° (1800 µs).

Figura 55 Posición del servomotor

En la salida del offset no se encuentra realmente montada en cero volts, se tiene un

valor de 220mV positivos, este error se generó debido a que se reemplazó la resistencia

variable por una resistencia fija. Para eliminar el error de los 220mV se colocó una rutina al

Si pot1a>pot2a Si pot1a<pot2a

Si pot1a=pot2a

Page 84: 63 Elizabeth Sede No Bustos

Capítulo 4 Construcción, Pruebas y Resultados cenidet

56

programa, sabiendo que 5V tiene un valor 255 al convertirlo a digital, el valor de los

220mV es aproximadamente el número 11.

Ahora bien, la primera rutina tiene dos condiciones, si el valor adquirido por pot1a

y pot2a es menor a 13, automáticamente se adquiere un valor de 0. Si los valores

adquiridos por pot1a y pot2a son igual o mayor a 13, entonces se les resta un 13. Con esto

se logra que los 220mV se vuelvan nuestro "NUEVO CERO" es decir, a partir de ahí será

la referencia para el servomotor.

if (pot1a<13) pot1a=0; else pot1a=pot1a-13; if (pot2a<13) pot2a=0; else pot2a=pot2a-13;

Segunda etapa, si el valor resultante de la resta de la primera etapa es menor o

igual a 36, entonces aux1 o aux2 (dependiendo la resta del canal que se vaya a comparar)

vale 1. Pero si la resta anterior vale más de 36, entonces aux vale 2. Los aux1 y aux2

ayudarán a saber a qué condición corresponde el valor adquirido en pot1a y pot2a. Por

ejemplo, el valor adquirido por el ADC es 56 (1.10V), al pasar la primera etapa se resta 13,

quedando 43. Como 43 supera el valor de 36, entonces el excedente es de 7 (pot1b=7). Si el

resultado hubiera sido 36 o menos, entonces no habría excedente, por lo que la variable

pot1b no existirá. (el número 36 se utiliza ya que al multiplicarlo por 7 da el número 252,

y como el PIC captura hasta un valor de 255).

if (pot1a<=36) aux1=1; if (pot1a>36) pot1b=pot1a-36;

Page 85: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

57

pot1a=36; aux1=2; if (pot2a<=36) aux2=1; if (pot2a>36) pot2b=pot2a-36; pot2a=36; aux2=2;

Explicación del PWM de salida de acuerdo a los datos obtenidos de las primeras dos etapas.

Si el valor obtenido de pot1a es mayor que pot2a, significa que las piernas

controladas por la señal de pot2a tendrán un ángulo menor, por lo que la duración del

pulso en alto será menor que la señal controlada por pot1a. Sin embargo, hay que recordar

que la disposición física de los servomotores dentro del cuerpo del robot hace que, para

que un par de piernas pueda avanzar, un servomotor deberá incrementar su ángulo,

mientras que el otro deberá decrementarlo (respecto a la posición neutral) para que giren

en la misma dirección. Pot1a controla dos salidas de PWM (B2, B3) y pot2a controla otras

dos salidas de PWM (B0, B1).

Ahora la tercer y última parte del programa hace la comparación de la segunda

instrucción utilizando las variables aux1 y aux2. Las rutinas son las siguientes.

if(aux1>aux2)

if (aux1<aux2)

if (aux1==aux2 && aux1==1)

if (aux1==aux2 && aux1==2)

De tal modo que si aux1 es mayor, una señal controlada por pot1a será la que

mayor tiempo dure en alto el pulso de PWM (B2) respecto a las otras 3 señales, mientras

que la otra será la que menor tiempo dure en alto el pulso de PWM (B3). Las señales B0 y

B1 tendrán un tiempo en alto de 1500 s.

Page 86: 63 Elizabeth Sede No Bustos

Capítulo 4 Construcción, Pruebas y Resultados cenidet

58

if(aux1>aux2) diferencial=(36+pot1b)-pot2a; if (diferencial<=36) delay_ms(1); delay_us (248-(pot1b*7)); output_low(PIN_B3); delay_us(diferencial*7); output_low(PIN_B1); delay_us(pot2a*7); delay_us(pot2a*7); output_low(PIN_B0); delay_us(diferencial*7); output_low(PIN_B2); delay_ms(18); delay_us(248-(pot1b*7)); else diferencial1=diferencial-36; delay_ms(1); delay_us(248-(pot1b*7)); output_low(PIN_B3); delay_us(252); delay_us(diferencial1*7); output_low(PIN_B1); delay_us(pot2a*7); delay_us(pot2a*7); output_low(PIN_B0); delay_us(252); delay_us(diferencial1*7); output_low(PIN_B2); delay_ms(18); delay_us(248-(pot1b*7));

Lo mismo ocurre si aux2 es mayor a aux1, una señal controlada por pot2a será la

que mayor tiempo dure en alto el pulso de PWM (B0) respecto a las otras 3 señales (B1, B2,

B3), mientras que la otra será la que menor tiempo dure en alto el pulso de PWM (B1). Las

señales B2 y B3 tendrán un tiempo en alto de 1500 s.

if (aux1<aux2) diferencial=(36+pot2b)-pot1a; if (diferencial<=36) delay_ms(1);

Page 87: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

59

delay_us(248-(pot2b*7)); output_low(PIN_B1); delay_us(diferencial*7); output_low(PIN_B3); delay_us(pot1a*7); delay_us(pot1a*7); output_low(PIN_B2); delay_us(diferencial*7); output_low(PIN_B0); delay_ms(18); delay_us(248-(pot2b*7)); else diferencial1=diferencial-36; delay_ms(1); delay_us(248-(pot2b*7)); output_low(PIN_B1); delay_us(252); delay_us(diferencial1*7); output_low(PIN_B3); delay_us(pot1a*7); delay_us(pot1a*7); output_low(PIN_B2); delay_us(252); delay_us(diferencial1*7); output_low(PIN_B0); delay_ms(18); delay_us(248-(pot2b*7));

Lo mismo ocurre si aux1 es igual a aux2, una señal controlada por pot1a será la que

mayor tiempo dure en alto el pulso de PWM (B0) respecto a las otras 3 señales, mientras

que la otra será la que menor tiempo dure en alto el pulso de PWM (B1). Las señales B2 y

B3 tendrán un tiempo en alto de 1500 s.

Si ambas señales aux1 y aux2 son iguales, siempre y cuando sean igual a 1,

entrarán a tres condiciones, dependiendo el valor que tenga Pot1a y Pot2a es la condición

que se tomará.

if (aux1==aux2 && aux1==1) if (pot1a>pot2a) diferencial=pot1a-pot2a; delay_ms(1); delay_us(252); delay_us(248-(pot1a*7)); output_low(PIN_B3); delay_us(diferencial*7);

Page 88: 63 Elizabeth Sede No Bustos

Capítulo 4 Construcción, Pruebas y Resultados cenidet

60

output_low(PIN_B1); delay_us(pot2a*7); delay_us(pot2a*7); output_low(PIN_B0); delay_us(diferencial*7); output_low(PIN_B2); delay_ms(18); delay_us(252); delay_us(248-(pot1a*7)); else if (pot1a<pot2a) diferencial=pot2a-pot1a; delay_ms(1); delay_us(252); delay_us(248-(pot2a*7)); output_low(PIN_B1); delay_us(diferencial*7); output_low(PIN_B3); delay_us(pot1a*7); delay_us(pot1a*7); output_low(PIN_B2); delay_us(diferencial*7); output_low(PIN_B0); delay_ms(18); delay_us(252); delay_us(248-(pot2a*7)); else if (pot1a==pot2a) delay_ms(1); delay_us(252); delay_us(248-(pot1a*7)); output_low(PIN_B1); output_low(PIN_B3); delay_us(pot1a*7); delay_us(pot1a*7); output_low(PIN_B2); output_low(PIN_B0); delay_ms(18); delay_us(252); delay_us(248-(pot1a*7));

La última rutina del programa (if (aux1==aux2 && aux1==2)), se utiliza cuando

las neuronas al conectarse se auto organizan, haciendo que las señales de las neuronas

varíe el desfase. En el Anexo B se encuentra unos ejemplos de estas condiciones.

Page 89: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

61

4.5 Pruebas En esta parte se muestran las cuatro pruebas que se realizaron y los resultados que se

obtuvieron.

4.5.1 Señal (Y1) del CNN con servomotor

Objetivo: Comprobar que el comportamiento de la flecha del servomotor corresponde al

comportamiento de la señal analógica proveniente de una neurona.

Figura 56 Servomotor

Variables: Salida Y1 de la célula 1 y salidas PIC (B0). (Señales)

Equipo e instrumentos de medición: Osciloscopio, multímetro, fuente de 5V y pilas de

±12V.

Procedimiento:

Alimentar las neuronas con ±12V, el PIC con servomotor con 5V.

Colocar 2 puntas de osciloscopio, la primera para la salida de neurona y la segunda

para la salida del PIC (B0 y B1).

Evaluación de resultados:

Observar y verificar si la señal del PWM de la salida B0 sigue la señal de la

neurona.

Conectar y verificar si el movimiento del servomotor concuerda con la señal del

PWM del pin B0 del PIC.

Presentación de resultados: Los resultados obtenidos fueron favorables ya que ambas

señales fueron comparadas y el PWM sigue la señal de la neurona, así como también el

movimiento de la flecha del servomotor.

Page 90: 63 Elizabeth Sede No Bustos

Capítulo 4 Construcción, Pruebas y Resultados cenidet

62

4.5.2 Señal de la CNN (Y1) con dos servos.

Objetivo: Comprobar que el movimiento de las flechas de 2 servomotores estén opuestos

respecto a la posición neutral, de acuerdo al comportamiento de la señal analógica

proveniente de una neurona para verificar el correcto funcionamiento del algoritmo.

Figura 57 Dos Servomotores y Neurona.

Variables: Salida Y1 de la célula 1 y salidas PIC (B0 y B1). (Señales)

Equipo e instrumentos de medición: Multímetro, fuente de 5V y pilas de ±12V.

Procedimiento:

Alimentar las neuronas con ±12V, el PIC con los cuatro servomotores con 5V.

Colocar dos servomotores a la salida del PIC.

Observar movimientos de éstos.

Evaluación de resultados: Conectar y verificar si el movimiento de los servomotores

concuerda con las señales del PWM de los pines B0 y B1 del PIC. Sabiendo que B1 que está

conectado al servomotor, la flecha girará en sentido contrario del otro servo.

Presentación de resultados: Los resultados muestran que ambos servomotores giraban a

30°, solo que uno de ellos gira en sentido contrario que al otro servo.

4.5.3 Señales de la CNN (Y1 y Y3) con cuatro servomotores.

Objetivo: Comprobar que el comportamiento de las flechas de los 2 pares de servomotores

estén desfasados 180° uno respecto al otro, de acuerdo al comportamiento de las señales

analógicas provenientes de las dos neuronas a utilizar.

Page 91: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

63

Figura 58 Cuatro servomotores y neuronas

Variables: Salida Y1 de la célula 1 y célula 2, las salidas PIC (B0, B1, B2 y B3). (Señales)

Equipo e instrumentos de medición: Multímetro, fuente de 5V y pilas de ±12V.

Procedimiento:

Alimentar las neuronas con ±12V, el PIC con servomotor con 5V.

Colocar los 4 servomotores a la salida del PIC.

Evaluación de resultados:

Observar que un par de servomotores estén desfasados 180° a los otros dos servos

y verificar si dos servomotores giran a 30° mientas que los otros giran en sentido

contrario dando -30°.

Presentación de resultados: Un par de servomotores se encuentran desfasados 180° con

respecto al segundo par. También se observo que un servo de cada par dará un angulo de

-30° tomado desde la vertical mientras que el otro dará un giro de +30°.

4.5.4 Integración de las neuronas al cuerpo del robot

En esta parte se harán dos pruebas, una es para verificar si el robot se mueve

correctamente, la segunda es verificar si la frecuencia de caminar cambia al modificar el

valor de los capacitores y la tercera es verificar que el robot no pierda el equilibrio.

Page 92: 63 Elizabeth Sede No Bustos

Capítulo 4 Construcción, Pruebas y Resultados cenidet

64

4.5.4.1 Señales de la CNN (Y1 y Y3) con el ensamble del robot

Objetivo: verificar que las piernas del robot se mueven correctamente, comprobar el

movimiento del mismo, así como analizar la velocidad de éste.

Figura 59 Robot y neuronas

Variables: Salida Y1 y Y3, las salidas PIC (B0, B1, B2 y B3) y piernas del robot.

Equipo e instrumentos de medición: Multímetro, fuente de 5V y pilas de ±12V.

Procedimiento:

Alimentar las neuronas con ±12V, el PIC con servomotor con 5V.

Colocar los 4 servomotores a la salida del PIC.

Evaluación de resultados:

a) Observar que un par de piernas estén desfasadas 180° con respecto al otro.

b) Verificar si las piernas vayan a la misma dirección (o que los servomotores estén a

±30°).

c) Verificar si el robot no pierde el equilibrio y que camine correctamente.

Presentación de resultados: Los resultados que se obtuvieron es que el par piernas se

desfasan 180° con respecto a las otras, todas las piernas van en la misma dirección y al

colocar el robot en el suelo, este no pierde el equilibrio al caminar y las piernas no chocan

entre ellas.

1er. Par de piernas

2do. Par de piernas

Page 93: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

65

4.5.4.2 Cambio de frecuencia o cambio de caminado a trote.

Objetivo: Verificar el cambio de frecuencia en las señales de la neurona y observar el

comportamiento del robot.

Figura 60 Cambio de Frecuencia

Variables: Salida Y1 y Y3, las salidas PIC (B0, B1, B2 y B3) y piernas del robot.

Equipo e instrumentos de medición: Multímetro, fuente de 5V y pilas de ±12V.

Procedimiento:

Alimentar las neuronas con ±12V, el PIC con servomotor con 5V.

Cambiar los capacitores por los siguientes: 330 µF, 220 µF, 100 µF, 47 µF y 33 µF.

Observar el comportamiento que tiene el robot, al cambio de éste.

Evaluación de resultados:

Observar que al cambiar los capacitores cambia la frecuencia al caminar el robot y con

base en éstos escoger los capacitores adecuados para el caminado y el trote.

Presentación de resultados: El resultado que se obtuvo fue que al cambiar el capacitor

cambia la frecuencia del andar del robot, con base en esto se escogieron dos capacitores,

para el caminado el capacitor de 100 µF y para el trote de 33 µF.

4.5.4.3 Locomoción en Rampa.

Objetivo: Verificar que si al colocar el robot en una rampa (con un ángulo de 12° entre la

hipotenusa y la base con una distancia de 133cm en la hipotenusa) pueda subir.

Page 94: 63 Elizabeth Sede No Bustos

Capítulo 4 Construcción, Pruebas y Resultados cenidet

66

Figura 61Locomoción en rampa

Variables: Velocidad y equilibrio.

Equipo e instrumentos de medición:

Procedimiento:

Colocar el robot sobre la rampa.

Generar locomoción en dirección hacia la adyacente de la rampa.

Observar el comportamiento que tiene el robot.

Evaluación de resultados:

Observar que al generar locomoción el robot no pierda el equilibrio y caiga.

Presentación de resultados: El resultado que se obtuvo fue que al generar locomoción el

robot nunca perdió el equilibrio y llego hasta el final de la hipotenusa.

4.5.5 Receptor y transmisor

Para cambiar de caminado a trote (frecuencia), se elaboraron los circuitos receptor

y transmisor. Ambos circuitos se realizaron en ORCAD 10.5 ® y al final se probaron en

protoboard.

Transmisor

En el transmisor se utilizó el típico 555 para generar los pulsos a una cierta

frecuencia y ser transmitida por el infrarrojo. Ver Anexo C.

Receptor

En el receptor se utilizó un amplificador (LM741) en modo comparador (es

comparar el voltaje del divisor de voltaje con el voltaje que arroja el fototransistor), al

Page 95: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

67

comparar el voltaje los relevadores (TDS-1202L) se activan para cambiar la frecuencia. Ver

Anexo C.

Figura 62 Receptor

Uno de los problemas que se presentó al utilizar el circuito sin el PIC, es que se

tenía que oprimir el botón todo el tiempo necesario para cambiar la frecuencia, al soltarlo

éste regresaba a su frecuencia inicial. Para eliminar este problema, la salida del

amplificador (LM741) pin 6 se paso a un pin del PIC y se anexó el siguiente programa.

conteo=conteo+1; IF (conteo==251) conteo=250;

Donde al inicio del programa general conteo se iguala a cero, la condición es si conteo es igual 251 el programa tardará 12.5seg para poder hacer el cambio de frecuencia. Y así se elimina el problema de estar presionando el botón todo el tiempo, para cambiar la frecuencia.

Page 96: 63 Elizabeth Sede No Bustos

Capítulo 4 Construcción, Pruebas y Resultados cenidet

68

4.6 Resultados Finales.

Una vez que se tuvieron todos los componentes independientes funcionando, se

procedió a insertar las neuronas dentro del cuerpo del robot y enlazar sus salidas con la

etapa conversión analógico digital y se analizó por medio del osciloscopio obteniendo los

resultados deseados.

Posteriormente se acoplaron los servomotores para comprobar su funcionamiento.

Los resultados mostraron una caída de tensión en la alimentación del micro-controlador

haciendo que reiniciara su funcionamiento, por lo que se aislaron las fuentes de

alimentación utilizando opto-acopladores y compuertas TTL inversoras para cada

servomotor y así se corrigió el problema; las piernas alcanzaron el ángulo requerido. El

desfase del par de las piernas fue de 180° con respecto al segundo par y un servo de cada

par da el giro inverso de 30°.

Finalmente se implementó la etapa de control remoto para hacer el cambio de

caminado a trote y se comprobó que las piernas cambiaron satisfactoriamente la velocidad

de movimiento cuando se apretaba el botón del control remoto. El circuito final

corresponde al siguiente diagrama de conexiones.

El prototipo final del robot se aprecia en la Figura 63.

Figura 63 Diseño FINAL del prototipo de robot cuadrúpedo controlado por CNN.

La ubicación espacial de los distintos componentes que integran al robot se puede

apreciar en el Anexo D1. El diseño del circuito del control remoto se puede apreciar en el

Anexo D2 y el del receptor en el Anexo D3. El diseño de las Neuronas se puede observar

en el Anexo D4 y la tarjeta principal que procesa todos los datos se puede observar en el

Anexo D5.

Page 97: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

69

Capítulo 5 Conclusiones

Page 98: 63 Elizabeth Sede No Bustos

Capítulo 5 Conclusiones cenidet

70

5.1 Conclusiones

El trabajo de investigación cumplió con el objetivo de evaluar el desempeño de las

Redes Neuronales Celulares (CNN) para la locomoción de un robot cuadrúpedo.

Del mismo modo se cumplieron los siguientes puntos:

Se realizó una revisión del estado del arte en modelos neurofisiológicos del sistema

locomotor en distintos robots con piernas, tales como cuadrúpedos y hexápodos.

En dicha revisión se identificaron los componentes más relevantes, así como

también las ventajas y desventajas de cada uno de éstos.

Se obtuvo, simuló y construyó el modelo matemático de la CNN para el tipo de

locomoción del robot, basándose en las ecuaciones de Chua y Arena, generando un

desfase entre señales de 180°.

Se diseñó y simuló el robot cuadrúpedo, utilizando los programas Solid Works y

ADAMS para posteriormente pasar a la construcción.

Se generó locomoción en el robot. Este punto fue un reto, ya que las redes con el

mecanismo van de la mano, esto es porque las redes solo generan un patrón

oscilatorio, lo que ayuda a la marcha del robot y el mecanismo ayuda a mantener el

equilibrio cuando éste genera locomoción.

Se generó un cambio en el tipo de locomoción (caminado y trote), con el fin de

imitar la locomoción de un mamífero (hipopótamo). Este punto es importante ya

que se evaluó el desempeño de las CNN, ya que se pensaba que al cambiar la

locomoción la CNN tardaría en responder al cambio.

5.2 Contribución Se disminuyó el número de neuronas de 6 a 4 [] y se conectaron en forma de anillo,

Se obtuvo un desfase entre señales de 180° utilizando sólo 4 neuronas.

Se hizo un cambio de locomoción (caminado a trote) utilizando sólo estas

neuronas.

Se construyo un robot cuadrúpedo con 2 grados de libertad, el primero controlado

por neuronas y el segundo es por gravedad.

El cambio de locomoción se hace por medio de un transmisor y un receptor

Page 99: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

71

Se logró que el robot subiera una rampa sin perder el equilibrio, con un ángulo de

12° entre la hipotenusa y la base con una distancia de 133cm en la hipotenusa.

5.3 Trabajos Futuros

Para generar locomoción en terrenos irregulares se recomienda que el robot

cuadrúpedo tenga un angulo de apertura mucho mayor al mencionado en esta tesis. Lo

que se tiene pensado es colocar un servomotor en cada pierna del robot (rodilla), esto

ayudara que aumente el angulo de apertura y poder esquivar obstáculos. Este tipo de

conexión da cuatro señales, las cuales solo se utilizaron dos para controlar las ante piernas

del robot. Las otras dos señales se pueden utilizar para los servomotores de la rodilla.

Si el robot se lleva a la exploración en lugares donde el hombre no puede llegar,

por ejemplo tuberías y desastres naturales (terremotos, tsunamis, incendios, etc.), para

buscar ciertos objetos, se aumentaría una cámara y por medio de un programa de

identificación de imágenes, poder buscar este. La tesis "Identificación y clasificación de

elementos multimedia de Ing. Monserrat Sedeño Bustos, elaboró sus prácticas en

CENIDET, lo que se hace es identificar por medio de un programa el tipo de objeto

(animal, humano, objeto, construcción y paisaje) mediante pixeles, donde la imagen se

pasa a una base de datos y clasifica este el tipo de objeto. Esta tesis está enfocada a páginas

web, que al abrir una página descargara todas las imágenes que se encontraran dentro de

esta. La tesis se encuentra en el Instituto Tecnológico de Cuautla (Morelos).

Para esquivar objetos más grandes que el robot, es necesario colocar sensores de

presencia y cambiar el diseño de la ante pierna, colocando dos servomotores en ella, un

servomotor para que se mueva con respecto a la vertical y otra con respecto a la

horizontal. Esto con el fin de que cuando el robot se encuentre cerca del obstáculo pueda

pasar del andar del hipopótamo al andar de un cangrejo (de lado)pero utilizando la

secuencia del elefante en el caminado.

Cambiar las pilas de 1.2V a 3A por 4 pilas de celular con un voltaje de 3.7V-

700mAh, con una vida de 35min., o baterías recargables STEREN modelo BAT- CAM-

BP511 con un voltaje de 7.2V - 1400mAh, con una vida de 1h 25min.

Para implementar las neuronas analógicas a un robot bípedo, se puede utilizar la

misma red del cuadrúpedo, solo que al momento de generar locomoción el robot pueda

perder el equilibrio, lo que se podrá hacer es aumentar el ancho de los pies del robot para

que tenga un área de apertura mayor o utilizar el balance dinámico, un ejemplo en un

animal es el pato, este tiene patas anchas, las piernas son como se ve en la Figura 64.

Teniendo tres articulaciones en cada pata.

Page 100: 63 Elizabeth Sede No Bustos

Capítulo 5 Conclusiones cenidet

72

Figura 64 Morfología de un pato

Page 101: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

73

Referencia Bibliográfica

Page 102: 63 Elizabeth Sede No Bustos

Referencia Bibliográfica cenidet

74

[1] Ollero Baturone Aníbal, “Robótica Manipuladores y Robot Móviles”, Editorial

Marcombo. Págs 464 (2001).

[2] Andrés Prieto – Moreno Torres “Estudio de la locomoción de un robot cuadrúpedo mediante la generación de patrones biológicos” Octubre 2003. [En línea. Disponible: www.iearobotics.com/personal/andres/proyectos/pucho/pucho.html].

[3] Diego Aguilar, Andrés Vivas “Modelado y control de un robot bípedo de nueve grados de libertad” 2009. Disponible: www.ai.unicauca.edu.co/publicaciones/Aguilar_ACA09.pdf

[4] J. S. R. Jang; C. T. Sun; E. mizutani, “Neuro-Fuzzy and Soft Computing.” Prentice Hall,

Inc. 1997. Pps. 614 USA.

[5]J. Frigo, M. Tilden, “A biologically inspired neural network controller for an infrared

tracking system”,pp. 1-14. Los Alamos National Laboratory, New Mexico, USA, 2001.

[6] Frigo, J.R, and Tilden M.W., “An analog neural network control method proposed for

use in a backup satellite control mode”, SPIE International Symposium on Intelligent

Systems and Advanced Manufacturing, pp. 84-94, 1997.

[7] Chua, Leon, Yang, Lin. “Cellular Neural Networks: Theory”, IEEE Transactions on

circuits and systems, vol. 35, no. 10, pp. 1257-1272 1988.

[8] Chua, Leon, Yang, Lin., “Cellular Neural Networks: Applications”, IEEE Transactions

on circuits and systems, vol. 35, no. 10, pp. 1273-1290, 1988.

[9] Calderón Zavala Gabriel “Control Del Péndulo Invertido Usando Dos Celdas

Neuronales Analógicas” Tesis Maestría en Ciencias en Ingeniería Electrónica,

Departamento de Ingeniería Electrónica, CENIDET, Cuernavaca. Mor. México. Enero 2009.

AT709.

[10] Martínez Peña Enrique “Control de un Robot tipo PUMA utilizando celdas

neuronales analógicas”. Tesis Maestría en Ciencias en Ingeniería Mecatrónica,

Coordinación de Mecatrónica, CENIDET, Cuernavaca, Morelos, México. Diciembre de

2008. AT694.

[11] Gorrostieta Efrén y Vargas Soto Emiliano, “Algoritmo difuso de locomoción libre para

un robot caminante de seis patas”. Computación y Sistemas Vol. 11 No. 3,2008 pp. 260-287

ISSN 1405-5546. Universidad Autónoma de Querétaro, Querétaro

Page 103: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

75

[12]E. Calle, I. Ávila, J. Zambrano “Diseño e Implementación de un Robot Móvil

Cuadrúpedo”. Revista Tecnológica ESPOL, vol. 20, N.1, 65-72.

[13] Julio Pérez Machorro “Generación de Locomoción de un hexápodo usando dos células

neuronales analógicas”. Tesis Maestría en Ciencias en Ingeniería Mecatrónica,

Coordinación de Mecatrónica, CENIDET, Cuernavaca, Morelos, México. Junio de 2009.

[14]Hashan Feng and Runxiao Wang “Construction of central pattern generator for

quadruped locomotion control”. International Conference on Advanced Intelligent

Mechatronics, 2008. AIM 2008. IEEE/ASME Julio 2008 pp. 979-984.

[15] Tadashi Komatsu and Makiko Usui. “Dynamic Walking and Running of a Bipedal

Robot using Hybrid Central pattern generator method.” IEEE International Conference on

Mecchatronics & Automation Niagara Falls Canada Julio 2005 pp. 987-992.

[16] Francesco Tenore, R. Jacob Vogelstein, Ralph Etienne – Cummings “Sensor-based

Dynamic Control of the Central Pattern Generator for Locomotion” IEEE (IEEE Xplore)

2007 pp. 613-616

[17] Fumiya Iida, Gabriel Gómez and Rolf Pfeifer “Exploiting Body Dynamics for

Controlling a Running Quadruped Robot” IEEE (IEEE Xplore) 2005. pp. 229 – 235.

[18] Kazuki Nakada, Tetsuya Asai and Yoshihito Amemiya “An Analog CMOS Central

Pattern Generator for Interlimb Coordination in Quadruped Locomotion”. IEEE

Transactions on Neural Networks Vol. 14 No. 5 September 2003.

[19] Michael Kent “Diccionario Oxford de Medicina y Ciencias del Deporte” Ed.

Paidotribo pp. 840, 2003.

[20] Villanueva Espinoza, María del Rosario. “Las Redes Neuronales Artificiales Y Su

Importancia Como Herramienta En La Toma De Decisiones”. Trabajo de Investigación.

Facultad de Ciencias Matemáticas, Universidad Nacional Mayor de San Marcos. Lima

Perú. [En línea:

http://sisbib.unmsm.edu.pe/BibVirtual/tesis/Basic/Villanueva_EM/villanueva_em.htm

]

[21] Arena Paolo y Fortuna Luigi “Analog Cellular Locomotion Control of Hexapod

Robots” IEEE pág. 21–36 Diciembre del 2002.

[22] Chua, L., Roska, T. “The CNN paradigm”, IEEE Transactions on circuits and systems

vol. 40, no. 3, pp. 147-156, 1993.

Page 104: 63 Elizabeth Sede No Bustos

Referencia Bibliográfica cenidet

76

[23] Paolo Arena et. al. “Bio-inspired Emergent Control of Locomotion Systems”, vol. 48.

World Scientific, Singapore, 2004.

[24] Boylestad Nashelsky “Electrónica: Teoría de circuitos y dispositivos electrónicos” 8va

edición Año 2003.

[25] Calleja Gjumlich Jorge Hugo manual “Circuitos Electrónicos analógicos teoría y

aplicaciones”, CENIDET

[26] Amplificadores Operacionales [En línea. Disponible:

www.ate.uniovi.es/8840/Amplificadores_Operacionales.ppt ].

[27] Bharathwaj, Muthuswamy, “Implementing Central Pattern Generators for Bipedal

Walkers using Cellular Neural Networks”, University of California, Berkeley, project

report, Spring 2005.

[28] Kraimon Maneesilp, Boonchana Purahong and Pitikhate Sooraksa “A new Analog

Control Circuit Design for Hexapod using Cellular Neural Network”. The 30th Annual

Conference of the IEEE Industrial Electronics Society. Pp. 2506 – 2510. November 2004.

[29] Kazuki NAKADA, Tesuya ASAI and Yoshihito AMEMIYA “An Analog CMOS

Circuit Implementing CPG Controller for Quadruped Walking Robot”. Proceedings of the

2nd International Symposium on Adaptive Motion of Animals and Machines, Kyoto,

March 4-8, 2003.

[30] José Emilio Vargas Soto “Diseño y realización de algoritmo de locomoción libre para

robots caminantes de cuatro patas”. Año 1994. [En línea. Disponible:

http://www.mecatronica.net/emilio/tesis/Tesis-DrEmilio00.pdf].

[31] Sedeño Bustos Elizabeth Primer Avance de Tesis “Control de un Robot Cuadrúpedo:

un enfoque a Redes Neuronales Analógicas”. December 2009.

[32] Serway R. A. “Física”. Editorial McGraw-Hill. (1992).

[33] Online Materials Information Resource. [En línea. Disponible:

www.iearobotics.com/personal/andres/proyectos/pucho/pucho.html].

[34] Russel C. Hibbeler. "Mecánica Vectorial para ingenieros: Estática". Editorial Pearson Prentice Hall (2004).

Page 105: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

77

Anexos

Page 106: 63 Elizabeth Sede No Bustos

Anexos cenidet

78

Page 107: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

79

Anexo A: Dibujo Robot Cuadrúpedo

Page 108: 63 Elizabeth Sede No Bustos

Anexos cenidet

80

Page 109: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

81

Page 110: 63 Elizabeth Sede No Bustos

Anexos cenidet

82

Page 111: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

83

Anexo B: Programa en C-Compiler

Page 112: 63 Elizabeth Sede No Bustos

Anexos cenidet

84

#include <18F1320.h> #fuses HS,NOWDT,NOPROTECT #use delay(clock=20000000) int pot1a, pot1b, pot2a, pot2b, aux1, aux2, diferencial, diferencial1, variable, conteo; int1 boleano=1; VOID MAIN() setup_adc(ADC_CLOCK_INTERNAL); //enables the a/d module and sets the clock to internal adc clock setup_adc_ports(ALL_ANALOG); //sets all the adc pins to analog set_tris_b(0x00); output_high(PIN_B4); // rutina para encender el LED durante 1 segundo delay_ms(250); delay_ms(250); delay_ms(250); delay_ms(250); output_low(PIN_B4); conteo=0; //A2 entrada del opam //A3 salida a los 2n2222 while(true) set_adc_channel(0);//the next read_adc call will read channel 0 delay_us(10); pot1a=read_adc(); set_adc_channel(1);//the next read_adc call will read channel 0 delay_us(10); pot2a=read_adc(); // PRIMERA ETAPA.- HACEMOS LA REFERENCIA 0, Por lo que restamos 13 a la magnitud adquirida. if (pot1a<13)

Page 113: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

85

pot1a=0; else pot1a=pot1a-13; if (pot2a<13) pot2a=0; else pot2a=pot2a-13; // SEGUNDA ETAPA.- Si el valor de POT1A Y/O POT2A es menor a 36, AUX vale 1. Pero si son mayor a 36, descomponemos el 2 bloques y la variable AUX vale 2 if (pot1a<=36) aux1=1; if (pot1a>36) pot1b=pot1a-36; pot1a=36; aux1=2; if (pot2a<=36) aux2=1; if (pot2a>36) pot2b=pot2a-36; pot2a=36; aux2=2;

Page 114: 63 Elizabeth Sede No Bustos

Anexos cenidet

86

// TERCERA ETAPA. Alzamos todos los pines. output_high(PIN_B3); output_high(PIN_B2); output_high(PIN_B1); output_high(PIN_B0); // CUARTA ETAPA, Iniciamos comparaciones. if(aux1>aux2) // si la lectura ADC1 es mayor a ADC2 diferencial=(36+pot1b)-pot2a; if (diferencial<=36) delay_ms(1); delay_us (248-(pot1b*7)); output_low(PIN_B3); delay_us(diferencial*7); output_low(PIN_B1); delay_us(pot2a*7); delay_us(pot2a*7); output_low(PIN_B0); delay_us(diferencial*7); output_low(PIN_B2); delay_ms(18); delay_us(248-(pot1b*7)); else diferencial1=diferencial-36; delay_ms(1); delay_us(248-(pot1b*7)); output_low(PIN_B3); delay_us(252); delay_us(diferencial1*7); output_low(PIN_B1); delay_us(pot2a*7); delay_us(pot2a*7); output_low(PIN_B0); delay_us(252); delay_us(diferencial1*7); output_low(PIN_B2); delay_ms(18); delay_us(248-(pot1b*7));

Page 115: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

87

else if (aux1<aux2) diferencial=(36+pot2b)-pot1a; if (diferencial<=36) delay_ms(1); delay_us(248-(pot2b*7)); output_low(PIN_B1); delay_us(diferencial*7); output_low(PIN_B3); delay_us(pot1a*7); delay_us(pot1a*7); output_low(PIN_B2); delay_us(diferencial*7); output_low(PIN_B0); delay_ms(18); delay_us(248-(pot2b*7)); else diferencial1=diferencial-36; delay_ms(1); delay_us(248-(pot2b*7)); output_low(PIN_B1); delay_us(252); delay_us(diferencial1*7); output_low(PIN_B3); delay_us(pot1a*7); delay_us(pot1a*7); output_low(PIN_B2); delay_us(252); delay_us(diferencial1*7); output_low(PIN_B0); delay_ms(18); delay_us(248-(pot2b*7)); else if (aux1==aux2 && aux1==1)

Page 116: 63 Elizabeth Sede No Bustos

Anexos cenidet

88

if (pot1a>pot2a) diferencial=pot1a-pot2a; delay_ms(1); delay_us(252); delay_us(248-(pot1a*7)); output_low(PIN_B3); delay_us(diferencial*7); output_low(PIN_B1); delay_us(pot2a*7); delay_us(pot2a*7); output_low(PIN_B0); delay_us(diferencial*7); output_low(PIN_B2); delay_ms(18); delay_us(252); delay_us(248-(pot1a*7)); else if (pot1a<pot2a) diferencial=pot2a-pot1a; delay_ms(1); delay_us(252); delay_us(248-(pot2a*7)); output_low(PIN_B1); delay_us(diferencial*7); output_low(PIN_B3); delay_us(pot1a*7); delay_us(pot1a*7); output_low(PIN_B2); delay_us(diferencial*7); output_low(PIN_B0); delay_ms(18); delay_us(252); delay_us(248-(pot2a*7)); else if (pot1a==pot2a) delay_ms(1); delay_us(252); delay_us(248-(pot1a*7)); output_low(PIN_B1); output_low(PIN_B3);

Page 117: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

89

delay_us(pot1a*7); delay_us(pot1a*7); output_low(PIN_B2); output_low(PIN_B0); delay_ms(18); delay_us(252); delay_us(248-(pot1a*7)); else if (aux1==aux2 && aux1==2) if (pot1b>pot2b) diferencial=pot1b-pot2b; delay_ms(1); delay_us(248-(pot1b*7)); output_low(PIN_B3); delay_us(diferencial*7); output_low(PIN_B1); delay_us(252); delay_us(pot2b*7); delay_us(pot2b*7); delay_us(252); output_low(PIN_B0); delay_us(diferencial*7); output_low(PIN_B2); delay_ms(18); delay_us(248-(pot1b*7)); else if (pot1b<pot2b) diferencial=pot2b-pot1b; delay_ms(1); delay_us(248-(pot2b*7)); output_low(PIN_B1); delay_us(diferencial*7); output_low(PIN_B3); delay_us(252); delay_us(pot1b*7); delay_us(pot1b*7); delay_us(252); output_low(PIN_B2); delay_us(diferencial*7);

Page 118: 63 Elizabeth Sede No Bustos

Anexos cenidet

90

output_low(PIN_B0); delay_ms(18); delay_us(248-(pot2b*7)); else if (pot1b==pot2b) delay_ms(1); delay_us(248-(pot1b*7)); output_low(PIN_B1); output_low(PIN_B3); delay_us(252); delay_us(pot1b*7); delay_us(pot1b*7); delay_us(252); output_low(PIN_B2); output_low(PIN_B0); delay_ms(18); delay_us(248-(pot1b*7)); set_adc_channel(2); delay_us(10); variable=read_adc(); if (variable>=150 && CONTEO==250) boleano=!boleano; if (boleano==1) output_high(PIN_A3); if (boleano==0) output_low(PIN_A3); CONTEO=0; conteo=conteo+1; IF (conteo==251) conteo=250;

Page 119: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

91

pot1a=0; pot1b=0; pot2a=0; pot2b=0; aux1=0; aux2=0; diferencial=0; diferencial1=0; variable=0;

Page 120: 63 Elizabeth Sede No Bustos

Anexos cenidet

92

Ejemplos de los casos que se encontraran en las señales de las neuronas. CASO 3

pot1a=86 86-13=73 pot1b=73-36=37 pot1a=36 aux1=2 pot2a=11 0 aux2=1

aux1 mayor aux2 2 mayor 1

220 mV; ADC = 11

1.7 V; ADC = 86

Page 121: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

93

CASO 4

pot1a=11 0 aux1=1 pot2a=25 25-13=12 aux2=1

aux1==aux2 1==1

pot1a menor que port2a 0 menor que 12

220 mV; ADC = 11

1.7 V; ADC = 86

0.5 V; ADC = 25

Page 122: 63 Elizabeth Sede No Bustos

Anexos cenidet

94

CASO 5

pot1a=11 0 aux1=1 pot2a=86 86-13=73 potb2=73-36=37 port2a=36 aux2=2

aux1 menor que aux2 1 menor que 2

220 mV; ADC = 11

1.7 V; ADC = 86

Page 123: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

95

Anexo C: Circuitos Esquemáticos

Page 124: 63 Elizabeth Sede No Bustos

Anexos cenidet

96

Page 125: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

97

Page 126: 63 Elizabeth Sede No Bustos

Anexos cenidet

98

Page 127: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

99

Page 128: 63 Elizabeth Sede No Bustos

Anexos cenidet

100

Page 129: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

101

Anexo D: Circuitos Impresos

Page 130: 63 Elizabeth Sede No Bustos

Anexos cenidet

102

Anexo D1 Disposición espacial de los componentes del robot.

Después de hacer las pruebas se pasó a la elaboración de circuitos en placa, el

software que se utilizó fue Altium Designer ®, donde se elaboraron 4 circuitos que están

colocados dentro del robot y dos más que son el transmisor y receptor. La distribución de

circuitos en el cuerpo del robot es el siguiente:

Figura 65 Cuerpo del robot con los 4 circuitos

Anexo D2 Diseño del Transmisor

Se elaboró el circuito del transmisor con medidas 31mm x 28mm, se alimenta con

dos pilas de botón de 3V, cabe mencionar que el regulador (Reg-1) mostrado en la Figura

66 (a) se descartó debido a que el voltaje suministrado es de 6V y el regulador necesita 3V

arriba del su valor para poder operar. Este circuito se adaptó a un control remoto de un

estéreo de automóvil.

(a) (b)

Figura 66 Circuito Transmisor (a) Altium (b) circuito en control remoto

Page 131: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

103

Anexo D3 Diseño del Receptor

En el circuito del receptor se incluyeron los relevadores con capacitores como se

muestra en la Figura 67, la placa se elaboro a doble vista, el fototransistor irá en la parte de

atrás, con el fin de salga del cuerpo del robot y así tener comunicación con el transmisor,

las medidas del circuito son de 42mm x 46mm. En la parte de abajo en la Figura 67 (a) se

muestra una tira de pines, esa tira de 7 pines es para tener comunicación con las CNNs y la

alimentación. La conexión de la tira es la siguiente, empezando del pin en forma cuadrada

hacia la izquierda, (CNN2 sw1, CNN2 sw2, +12Vcd, GND, 5Vcd, CNN1 sw1, CNN1

sw2).

(a) (b)

Figura 67 Receptor con Relevadores

Anexo D4 Diseño de la CNN 1 y 2

Los circuitos de las CNN1 y 2 tienen una medida de: 42mm x 40mm, la placa es a

doble vista, como se puede ver en la Figura 68, también cuenta con una tira de pines de 7, y

la conexión es de esta es la siguiente, cabe mencionar que CNN1 y la CNN2 sus

conexiones son diferentes.

CNN 1: (CNN1 sw2, CNN1 sw1, +12Vcd, -12Vcd, GND, Y1, In)

CNN 2: (Y1, In, +12Vcd, -12Vcd, GND, CNN2 sw1, CNN2 sw2)

Page 132: 63 Elizabeth Sede No Bustos

Anexos cenidet

104

Figura 68 Circuito de la CNN1 y CNN2

Anexo D5 Diseño del Circuito Principal

En esta tarjeta se encuentran OFFSET, PIC, 74LS04, optoacopladores, servomotores (este

último circuito se utilizaron de montaje superficial, debido al espacio reducido del cuerpo

del robot). Las medidas son: 72mm x 44mm. En esta se colocaron los tres circuitos antes

mencionados; los pines de la parte izquierda se colocó la placa del receptor, los pines que

se encuentran en la parte de arriba se colocó la CNN1, los pines de abajo se conectó la

CNN2 y los pines que se encuentran a la derecha, esos alimentan todo el circuito. Los

cuatro grupos de pines de tres (machos) se utilizan para la conexión de los servomotores y

la tira de los cinco pines (macho) se utiliza para programar el PIC (Al programar el

microcontrolador es necesario desconectar la alimentación). Para nombrar los pines de

alimentación se toman como base el pad en forma cuadrada hacia delante.

Alimentación: (12Vcd RELE, GND opto, 5Vcd opto, GND, 5Vcd PIC, 12Vcd CNN, -12Vcd

CNN).

Figura 69 Circuito Principal

Page 133: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

105

Figura 70 Unión de las cuatro placas

Page 134: 63 Elizabeth Sede No Bustos

Anexos cenidet

106

Page 135: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

107

Anexo E: Hojas de Datos

Page 136: 63 Elizabeth Sede No Bustos

Anexos cenidet

108

Page 137: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

109

Page 138: 63 Elizabeth Sede No Bustos

Anexos cenidet

110

Page 139: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

111

Page 140: 63 Elizabeth Sede No Bustos

Anexos cenidet

112

Page 141: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

113

Page 142: 63 Elizabeth Sede No Bustos

Anexos cenidet

114

Page 143: 63 Elizabeth Sede No Bustos

cenidet LRC: ECNA

115