Sunteți pe pagina 1din 78

Editorial

Editorial
Director

Del Editor al Lector


Ing. Horacio D. Vallejo
Producción
José María Nieves (Grupo Quark SRL)

autor: No caben dudas de que una de las disciplinas que está marcando tenden-
Varios (ver Editorial)
cias en la evolución de la electrónica es la robótica aplicada a la ciencia, la
Selección y Coordinación:
Ing. Horacio Daniel Vallejo salud y a la investigación. En los últimos dos años he sido partícipe de una
serie de eventos que me han hecho reflexionar sobre el rumbo que está
EdiToRial QUaRK S.R.l.
tomando la tecnología, y es por ello que nos propusimos la edición de una
Propietaria de los derechos en castellano de la publicación men- serie de textos que traten estas nuevas tecnologías pero con el contenido cien-
sual SabER ElEcTRónica - San Ricardo 2072 (1273) - Capi- tífico y matemático limitado como para que resulten atractivos para todos los
tal Federal - Buenos Aires - Argentina - T.E. 4301-8804
niveles.
administración y Negocios Los primeros capítulos explican qué es la inteligencia artificial, cómo se
Teresa C. Jara (Grupo Quark SRL) apoya en la denominada “lógica difusa” y de qué forma se pueden realizar
Patricia Rivero Rivero (SISA SA de CV)
Margarita Rivero Rivero (SISA SA de CV) proyectos prácticos usando microcontroladores. El primer capítulo sienta las
bases para el desarrollo de la lógica difusa que se expresa en los capítulos 2 a
Staff
Liliana Teresa Vallejo 4. El autor de estos capítulos es Sergio Raúl Richter y colaboradores y el mail
Mariela Vallejo de contacto es: sergioraulritchter@yahoo.com.ar.
Diego Vallejo
Luis Alberto Castro Regalado (SISA SA de CV) Los siguientes capítulos están destinados a la robótica BEAM, ya que es
José Luis Paredes Flores (SISA SA de CV) la rama de la robótica que mayor crecimiento a experimentado últimamente.
Sistemas: Paula Mariana Vidal Para su edición se han tomado conceptos del muy conocido sitio en Internet:
red y Computadoras: Raúl Romero www.uco.es, de los autores Antonio Luis Lora Silva y Edmundo Díaz
Video y animaciones: Fernando Fernández
legales: Fernando Flores González. También se han visitado otros portales que permiten enriquecer el
Contaduría: Fernando Ducach texto. El capítulo 6, destinado a la construcción de robots con técnicas BEAM,
Técnica y Desarrollo de Prototipos:
Alfredo Armando Flores
fue escrito por Fernando Remiro Domínguez, un viejo conocido de nuestra
querida Saber Electrónica.
atención al Cliente La selección del material y la coordinación del texto han estado a cargo
Alejandro Vallejo
ateclien@webelectronica.com.ar de Horacio Daniel Vallejo, quien también posee cierta experiencia en el
campo de la robótica y las comunicaciones, sobre todo, en las modernas téc-
Internet: www.webelectronica.com.mx
nicas de diagnóstico por imágenes, cuyo tema será objeto de un tomo próximo
Publicidad: de la colección Club Saber Electrónica.
Rafael Morales
rafamorales@webelectronica.com.ar ¡Hasta el mes próximo!
Club Se:
grupo Quark Srl
luisleguizamon@webelectronica.com.ar Sobre loS 2 CDS y Su DeSCarga
editorial Quark Srl Ud. podrá descargar de nuestra web 2 CDs: “Todo Sobre Robótica”
San Ricardo 2072 (1273) - Capital Federal
www.webelectronica.com.ar que posee un curso completo que comienza desde las bases e incluye a los
microcontroladores y “Proyectos de Robótica y Minirobótica” con gran
La Editorial no se responsabiliza por el contenido de las notas cantidad de circuitos para armar y sistemas para experimentar. Todos los
firmadas. Todos los productos o marcas que se mencionan son CDs son productos multimedia completos con un costo de mercado equi-
a los efectos de prestar un servicio al lector, y no entrañan res-
ponsabilidad de nuestra parte. Está prohibida la reproducción valente a 8 dólares americanos cada uno y Ud. los puede descargar GRA-
total o parcial del material contenido en esta revista, así como TIS con su número de serie por ser comprador de este libro. Para realizar
la industrialización y/o comercialización de los aparatos o
ideas que aparecen en los mencionados textos, bajo pena de la descarga deberá ingresar a nuestra web: www.webelectronica.com.mx,
sanciones legales, salvo mediante autorización por escrito de tendrá que hacer clic en el ícono password e ingresar la clave “elb294”.
la Editorial.
Tenga este texto cerca suyo ya que se le hará una pregunta aleatoria sobre
Impresión: Talleres Babieca - México el contenido para que pueda iniciar la descarga.

Editorial 1
Robótica BEAM, Inteligencia Artificial y Lógica Difusa

Robótica bEam, intELigEncia aRtificiaL y


Lógica Difusa

sumaRio
Capítulo 1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
la EvoluCión dE las Computadoras: Los Conjuntos Fuzzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
Diseño de un Control Fuzzy . . . . . . . . . . . . . . . . . . . . . . . .40
robótiCa E intEligEnCia artifiCial . . . . . . . . . . . .3
Las Señales Mioeléctricas . . . . . . . . . . . . . . . . . . . . . . . . .41
Inteligencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
Práctica: Control de Brazo Robot
¿Qué es la Inteligencia? . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
¿Cómo se mide la inteligencia? . . . . . . . . . . . . . . . . . . . . . .5 Mediante Señales EMG . . . . . . . . . . . . . . . . . . . . . .44
Inteligencia Artificial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7 Introducción al Problema . . . . . . . . . . . . . . . . . . . . . . .44
¿Superarán las Máquinas al Hombre? . . . . . . . . . . . . . . . . .8 Diseño del Sistema de Control Fuzzy . . . . . . . . . . . . .45
Spaun, una Simulación Cerebral Funcional . . . . . . . . . . . .11 Implementación con PICAXE . . . . . . . . . . . . . . . . . . . .47
Conclusión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 El Fuzzificador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
Desfuzzificador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48
Capítulo 2 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48
Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50
robótiCa y lógiCa difusa: Funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
rEdEs nEuronalEs artifiCialEs . . . . . . . . . . . . .13
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14 Capítulo 5
Perceptrón Simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
basEs para la ConstruCCión dE
Algoritmo de Entrenamiento . . . . . . . . . . . . . . . . . . . . . . . .16
Práctica: Implementación de un robots y mini-robots:
Perceptrón Simple en NePic . . . . . . . . . . . . . . . . . .17 robótiCa y mini-robótiCa bEam . . . . . . . . . . . .53
El Sistema NePic . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54
Microcore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54
Capítulo 3 Solar Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
Robótica Clásica Vs Robótica BEAM . . . . . . . . . . . . . . . . .55
rEdEs nEuronalEs E intEligEnCia artifiCial:
Historia y Evolución de la Robótica BEAM . . . . . . . . . . . . .56
implEmEntaCión dE un CErEbro práctica: Clasificación de la robótica bEam . . . .58
para robot móvil . . . . . . . . . . . . . . . . . . . . . . . .21 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21 Robots No Motrices . . . . . . . . . . . . . . . . . . . . . . . . . . .60
El Perceptrón Multicapa (MLP) . . . . . . . . . . . . . . . . . . . . .22 Robots Motrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61
Práctica: Implementación de un Aplicaciones de la Robótica BEAM . . . . . . . . . . . . . . .64
Robot Móvil con NePic . . . . . . . . . . . . . . . . . . . . . .24 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
Un Robot para Experimentar . . . . . . . . . . . . . . . . . . . .25 Capítulo 6
La Red que Usaremos . . . . . . . . . . . . . . . . . . . . . . . . .28 armE un pEquEño robot dEsdE CEro:
Regiones de Decisión . . . . . . . . . . . . . . . . . . . . . . . . .28
Primera Práctica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
ConstruCCión dE un miCrobot . . . . . . . . . . . . . .69
Segunda Práctica . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69
Movilidad de Nuestra Estructura . . . . . . . . . . . . . . . . . . . . .71
Los Sensores del Microbot . . . . . . . . . . . . . . . . . . . . . . . . .72
Capítulo 4
El Sensor CNY70 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73
introduCCión al Control Con fuzzy logiC: El Sistema de Actuación: Control de Motores . . . . . . . . . .74
Control dE brazo robot Control de Motores por Medio de Microcontrolador . . . . . .77
por sEñalEs ElECtromiográfiCas . . . . . . . . . . .33 Montaje del Driver L293B con el Microcontrolador PIC . . .78

2 Sumario
C a p í t u lo 1

L a E voLución dE Las c omputadoras

r obótica E
i ntELigEncia a rtificiaL
Como una primera aproximación, podemos decir que la robótica es la ciencia y la tecno-
logí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. Desde los
comienzos de la implementación de automatismos en las máquinas, a mediados de la
década del 50 del siglo pasado, se han buscado diferentes técnicas que impriman cierta
autonomía en la toma de decisiones de estas máquinas frente a diferentes procesos lo
que ha llevado a la implementación de lógicas difusas y a la formulación de otras técni-
cas. En este capítulo veremos de qué manera el hombre sigue buscando mecanismos
que simulen el funcionamiento del cerebro con el objeto de encontrar respuestas a cier-
tas enfermedades que sirvan, además, para la implementación de robots independientes
que puedan realizar tareas sumamente riesgosas para el hombre.

Capítulo 1 3
Robótica BEaM, Inteligencia artificial y lógica Difusa
IntelIgencIa que consideran la capacidad de adaptación a
nuevas situaciones; y las operativas, que son
La inteligencia es el término global mediante aquellas que dan una definición circular
el cual se describe una propiedad de la mente diciendo que la inteligencia es "...aquello que
en la que se relacionan habilidades tales como miden las pruebas de inteligencia".
inteligencia"
las capacidades del pensamiento abstracto, el Además, el concepto de inteligencia artificial
entendimiento, la comunicación, el raciocinio, generó hablar de sistemas, y para que se
el aprendizaje, la planificación y la solución de pueda aplicar el adjetivo inteligente a un sis-
problemas. tema, éste debe poseer varias características,
El diccionario de la Real Academia Española tales como la capacidad de razonar, planear,
de la lengua define la inteligencia (del latín inte- resolver problemas, pensar de manera abs-
llegentĭa), entre otras acepciones como la tracta, comprender ideas y lenguajes, y apren-
"capacidad para entender o comprender" y der.
como la "capacidad para resolver problemas". Tal diversidad indica el carácter complejo de
La inteligencia parece estar ligada a otras la inteligencia, la cual sólo puede ser descrita
funciones mentales como la percepción, o parcialmente mediante enumeración de proce-
capacidad de recibir información, y la memoria, sos o atributos que, al ser tan variados, hacen
o capacidad de almacenarla. inviable una definición única y delimitada,
La palabra inteligencia se define como la dando lugar a singulares definiciones, tales
capacidad que se tiene para razonar con el como: «la inteligencia es la capacidad de
objeto de solucionar problemas razonar y arti- adquirir capacidad», de Woodrow, o «la inteli-
ficial se define como algo no natural. gencia es lo que miden los test de inteligen-
Por lo tanto, y de manera más específica la cia», de Bridgman.
inteligencia artificial es la disciplina que se
encarga de construir procesos que al ser eje-
cutados sobre una arquitectura física producen ¿Qué es la IntelIgencIa?
acciones o resultados que maximizan una
medida de rendimiento determinada, basán- La inteligencia es la capacidad de relacionar
dose en la secuencia de entradas percibidas y conocimientos que poseemos para resolver
en el conocimiento almacenado en tal arquitec- una determinada situación. Si indagamos un
tura. poco en la etimología de la propia palabra
Hasta la fecha algunos de los sistemas de encontramos en su origen latino inteligere,
algoritmos han podido superar al ser
humano como en las sumas, recupera-
ción y almacenamiento de datos etc.
pero las maquinas todavía no pueden
superar al hombre como las lenguas
usadas, el reconocimiento de formas , la
visión ,etc.
Definir qué es la inteligencia es siem-
pre objeto de polémica; ante un escena-
rio tan diversificado de opiniones
Vernon (1960) sugirió una clasificación
de las principales definiciones. La
misma se hizo en base a tres grupos:
las psicológicas, mostrando la inteligen-
cia como la capacidad cognitiva, de
aprendizaje, y relación; las biológicas,

4 Capítulo 1
Inteligencia artificial
compuesta de intus * Inteligencia
(entre) y legere lingüística-
(escoger). Por lo Verbal: Es la flui-
que podemos dez que posee una
deducir que ser persona en el uso
inteligente es saber de la palabra.
elegir la mejor Destreza en la utili-
opción entre las zación del len-
que se nos brinda guaje, haciendo
para resolver un hincapié en el sig-
problema. nificado de las
Por ejemplo, si a palabras, su orden
una persona se le sintáctico, sus
plantea subir al sonidos, ...
tejado de una casa,
la persona selec- Esta inteligencia
cionará los instru- nos capacita para
mentos que cree escribir poemas,
necesario para historias, ...
subir, pues con los
conocimientos que * Inteligencia
ya posee (lógicos, Visual-espacial:
matemáticos, ...) Es la habilidad de
ha ideado una crear un modelo
forma para ejecutar una acción que le permitirá mental de formas, colores, texturas, ... Está
subir al tejado. Unos dirán que con una esca- ligada a la imaginación. Una persona con alta
lera, otros con una cuerda, otros necesitarán inteligencia visual está capacitada para trans-
una serie de instrumentos. formar lo que crea en su mente en imágenes,
tal como se expresa en el arte gráfico. Esta
“Una persona más inteligente que otra esco- inteligencia nos capacita para crear diseños,
gerá una opción mejor que otra”. cuadros, diagramas y construir cosas.

¿Cómo se mide la inteligencia? * Inteligencia corporal-cinética: Es la


Tristemente la mayoría de los test que miden habilidad para controlar los movimientos de
la inteligencia de un ser humano sólo tienen en todo el cuerpo para realizar actividades físicas.
cuenta las capacidades lógica-matemática y Se usa para efectuar actividades como depor-
lingüísticas. Según la teoría de las inteligencias tes, que requiere coordinación y ritmo contro-
múltiples según Howard Gardner podemos dis- lado.
tinguir tipos diferentes de inteligencia formal:
* Inteligencia lógica-Matemática: Es la * Inteligencia Musical: Es la habilidad que
habilidad que poseemos para resolver proble- nos permite crear sonidos, ritmos y melodías.
mas tanto lógicos como matemáticos. Nos sirve para crear sonidos nuevos para
Comprende las capacidades que necesitamos expresar emociones y sentimientos a través de
para manejar operaciones matemáticas y razo- la música.
nar correctamente.
* Inteligencia Interpersonal: Consiste en
Nuestro procesamiento aritmético, lógico, relacionarse y comprender a otras personas.
razonado, ... va ligado a ella. Incluye las habilidades para mostrar expresio-

Capítulo 1 5
Robótica BEaM, Inteligencia artificial y lógica Difusa
nes faciales, controlar la voz y expresar gestos Fue algo ameno en una clase de herencia
en determinadas ocasiones. También abarcar mendeliana.
las capacidades para percibir la afectividad de En cambio, otros piensan que la inteligencia
las personas. se desarrolla durante el nacimiento y muerte de
la vida de un ser vivo.
* Inteligencia Intrapersonal: Es nuestra Aún así está demostrado que muchos niños
conciencia. Entender lo que hacemos nosotros aprenden más rápido que otros, aunque pienso
mismos y valorar nuestras propias acciones. que la adquisición de conocimientos y técnicas
no es cuestión de inteligencia (aunque esté
* Inteligencia naturalista: Consiste en el relacionado).
entendimiento del entorno natural y la observa- También cabe mencionar la diferencia entre
ción científica de la naturaleza como la biolo- una persona inteligente y una persona sabia.
gía, geología o astronomía.
¿Es lo mismo ser sabio que inteligente?
Ejemplos donde la separación de las inteli- Pues no. La sabiduría es la posesión de
gencias se manifiesta pueden encontrarse en conocimiento, el saber cosas.
personas con trastornos mentales que sorpren- En la inteligencia se utiliza las cosas que
dentemente poseen extraordinarias habilida- sabemos, aún así podemos saber muchas
des para realizar cálculos o componer música. cosas y no ser capaces de resolver un deter-
Como decía anteriormente, la mayoría de minado problema. Es el caso de mucha gente,
los test que calculan el coeficiente intelectual pueden saber mucho y ser unos auténticos
no hacen un estudio exhaustivo de todas las imbéciles.
distintas inteligencias que posee el ser Otro término que se confunde con la inteli-
humano. Los resultados de la medida de las gencia al igual que ocurre con la sabiduría es la
múltiples inteligencias de una persona le puede cultura.
servir para su orientación profesional, pues
podría saber cuáles serían las actividades ¿Una persona culta es una persona inte-
dónde se desenvolvería mejor, o qué inteligen- ligente?.
cia debería de desarrollar. Antes de nada tenemos que comprender
que significa cultura en el sentido de la refle-
¿La inteligencia de una persona se puede xión que estamos tratando. Según la RAE
desarrollar? (Real Academia Española) un individuo culto
Muchos dicen que no, que una persona es una persona que posee un conjunto de
nace con una determinada inteligencia, incluso conocimientos.
rematando la faena afirmando que es heredita- Por lo tanto una persona culta, no implica
ria (en mi opinión eso es una burrada). Un pro- que sea más inteligente que otra inculta (sin
fesor de biología una vez nos comentaba en estudios, sin conocimientos culturales). Por
clase una anécdota: otro lado tampoco hay que confundir inteligen-
cia con memoria.
“En una ocasión Albert Einstein conoció a Existen muchas personas con grandes
una exuberante actriz, la cual le propuso capacidades mnemotécnicas y que pueden
casarse y tener hijos, pues con la inteligencia recordar muchos conceptos, aunque sin la
de Einstein y la belleza de la actriz, tendrían necesidad de comprenderlos.
hijos tan guapos como ella y tan listos como él. Aún así está comprobado que definir la inte-
Lamentablemente la actriz no contempló la ligencia es muy complicado, pues existen
opción que Einstein le respondió: ¿Y si nues- muchas teorías y muchos puntos de vistas en
tros hijos saliesen tan feos como yo y tan idio- los que creer, algunos muy dispares. Sin
tas como tú?”. embargo, si no quieres calentarte el coco

6 Capítulo 1
Inteligencia artificial
demasiado cuando te pregunten ¿qué es la más específica la inteligencia artificial es la dis-
inteligencia? responde sutilmente: una palabra. ciplina que se encarga de construir procesos
que al ser ejecutados sobre una arquitectura
física producen acciones o resultados que
IntelIgencIa artIfIcIal maximizan una medida de rendimiento determi-
nada, basándose en la secuencia de entradas
Se denomina inteligencia artificial (IA) a la percibidas y en el conocimiento almacenado en
rama de las ciencias de la Computación dedi- tal arquitectura.
cada al desarrollo de agentes racionales no Existen distintos tipos de conocimiento y
vivos. medios de representación del conocimiento, el
Para explicar la definición anterior, entién- cual puede ser cargado en el agente por su
dase a un agente como cualquier cosa capaz diseñador o puede ser aprendido por el mismo
de percibir su entorno (recibir entradas), proce- agente utilizando técnicas de aprendizaje.
sar tales percepciones y actuar en su entorno También se distinguen varios tipos de proce-
(proporcionar salidas), y entiéndase a la racio- sos válidos para obtener resultados racionales,
nalidad como la característica que posee una que determinan el tipo de agente inteligente.
elección de ser correcta, más específicamente, De más simples a más complejos, los cinco
de tender a maximizar un resultado esperado. principales tipos de procesos son:
De acuerdo al concepto previo, racionalidad
es más general y por ello más adecuado que * Ejecución de una respuesta predetermi-
inteligencia para definir la naturaleza del obje- nada por cada entrada (análogas a actos refle-
tivo de esta disciplina. Por lo tanto, y de manera jos en seres vivos).

Capítulo 1 7
Robótica BEaM, Inteligencia artificial y lógica Difusa
¿Qué es la inteligencia artificial?

* Búsqueda del estado requerido en el con- Varios ejemplos se encuentran en el área de


junto de los estados producidos por las accio- control de sistemas, planificación automática,
nes posibles. la habilidad de responder a diagnósticos y a
consultas de los consumidores, reconocimiento
* Algoritmos genéticos (análogo al proceso de escritura, reconocimiento del habla y reco-
de evolución de las cadenas de ADN). nocimiento de patrones. Los sistemas de IA
actualmente son parte de la rutina en campos
* Redes neuronales artificiales (análogo al como economía, medicina, ingeniería y la mili-
funcionamiento físico del cerebro de animales y cia, y se ha usado en gran variedad de aplica-
humanos). ciones de software, juegos de estrategia como
ajedrez de computador y otros videojuegos.
* Razonamiento mediante una lógica formal
(análogo al pensamiento abstracto humano).
¿superarán las MáQuInas al HoMbre?
También existen distintos tipos de percep-
ciones y acciones, pueden ser obtenidas y pro- ¿Surgirá una inteligencia artificial que
ducidas, respectivamente por sensores físicos supera a la humana?
y sensores mecánicos en máquinas, pulsos Desde el surgimiento de la Cibernética cre-
eléctricos u ópticos en computadoras, tanto ada por Norbert Wiener en 1948, los científi-
como por entradas y salidas de bits de un soft- cos han venido haciéndose esta pregunta, al
ware y su entorno software. principio como una especulación que ha ser-

8 Capítulo 1
Inteligencia artificial
Capítulo 1 9
Robótica BEaM, Inteligencia artificial y lógica Difusa
vido de tema a la ciencia ficción, luego como todas las actividades intelectuales de cualquier
una posibilidad algo lejana, más reciente- humano independientemente de la inteligencia
mente como un hecho que se hará realidad en de éste y está convencido que esa inteligencia
poco tiempo, para algunos forma inevitable a superior será la que impulsará el progreso y
este hecho que según sus defensores debe este será mucho mas rápido e incluso superará
ocurrir en este siglo, le llaman la singularidad a la actual evolución natural, por lo que apare-
tecnológica. cerán problemas miles de veces más deprisa
El primero en hablar sobre la singularidad que la selección natural y afirma que estare-
tecnológica, fue Vernor Vinge, matemático y mos entrando a un régimen radicalmente dife-
escritor de ciencia ficción, quien en 1993 escri- rente de nuestro pasado humano.
bió un artículo anunciando el advenimiento de La singularidad se basa en las tendencias
una nueva era donde la tecnología superaba a actuales de priorizar el hardware sobre el soft-
los humanos y en la que vaticinó que el surgi- ware, y se apoya sobre los siguientes concep-
miento de entidades con inteligencia mayor a la tos:
humana la cual será una realidad en un futuro
cercano, antes del 2030, y se podrá alcanzar • La evolución de las máquinas es más
de diferentes modos: rápida que la de los humanos, mientras las
máquinas siguen un crecimiento acelerado, la
1. Pueden desarrollarse computadoras evolución natural de los humanos esta prácti-
"conscientes" con una inteligencia equivalente camente detenida.
a la humana o superior. • La aceleración de las tecnologías se
2. Las grandes redes de computadoras con seguirá incrementando hasta llegar a un punto
sus usuarios asociados, pueden despertar que escapa a las capacidades de los humanos
como entidades superinteligentes. (singularidad tecnológica).
3. Las interconexiones entre humanos y • Las máquinas que se Irán auto constru-
computadoras pueden llegar a tal nivel de pro- yéndose a si misma, cada vez mas perfeccio-
fundidad que los que la usen actúen como nadas, mas veloces, mas memorias, dotadas
superinteligencias. de mejores algoritmos podrán llegar a conver-
4. La ciencia biológica puede lograr métodos tirse en máquinas superinteligentes que
que mejore el intelecto humano natural. superen a los humanos.
• La inteligencia de las máquinas dada la
La idea de una singularidad, Vinge la sus- complejidad que Irán adquiriendo y las cone-
tenta sobre la ley de Moore que dice que la xiones internas (circuitos) o externas (redes)
capacidad de los microchips de un circuito inte- podrá despertar como una entidad auto-cons-
grado se duplicará cada dos años, lo cual ciente.
traerá un crecimiento exponencial de la poten-
cia del hardware de las computadoras y de Ahora bien, me permito un pensamiento
mantenerse este crecimiento acelerado, con- bastante individual:
ducirá inevitablemente a que las maquinas le
den alcance y luego superen la capacidad del “Por más que las máquinas sigan evolu-
cerebro para procesar la información y según cionando y que mejoren las técnicas de inteli-
un gráfico elaborado por Hans Moravec la pari- gencia artificial mediante el crecimiento de
dad entre el hardware y el cerebro se alcanzará fractales, la lógica difusa o implementaciones
alrededor del 2020 (vea el gráfico sobre la evo- complejas de redes neuronales, es imposible
lución de las computadoras) lo cual dará lugar que pueda –siquiera- acercarse al razona-
a las máquinas súper inteligentes. miento humano, por lo cual me resulta impo-
Vinge define una máquina súper inteligente sible pensar que las máquinas puedan supe-
como una equipo capaz de superar en mucho rar al hombre”.

10 Capítulo 1
Inteligencia artificial
spaun, una sIMulacIón cerebral funcIonal (compuestas por unas 10.000 neuronas). Es un
proyecto a largo plazo cuyos resultados vere-
La simulación cerebral es un área fascinante mos en el futuro.
en la que se mezclan neurociencia y computa- IBM ha realizado la mayor simulación neuro-
ción de alto nivel. Periódicamente recibimos nal hasta la fecha. 500 mil millones de neuro-
noticias de nuevas y sorprendentes simulacio- nas y 100 billones de sinapsis. Sin embargo, es
nes. Con frecuencia las informaciones son con- un proyecto de computación, no de neurocien-
fusas y es importante colocar cada cosa en su cia. No simula nada parecido a un comporta-
sitio. Spaun es un simulador que por primera miento humano. El objetivo a largo plazo es
vez simula la funcionalidad de un cerebro com- construir novedosos chips neurosinápticos de
plejo. Es decir, trata de hacer lo que hace un arquitectura no Von Neumann.
cerebro real. Un camino muy prometedor. Un proyecto mucho menos ambicioso pero
Uno de los primeros intentos fue el proyecto más realista es OpenWorm. Trata de simular la
Blue Brain, que sigue en marcha aunque últi- conducta de C. Elegans, un gusano del que
mamente con pocas noticias. La idea es simu- conocemos su Conectoma, sus 302 neuronas y
lar cada una de las baldosas o ladrillos del sus sinapsis. Empezar por lo sencillo tiene sus
cerebro llamadas columnas neocorticales ventajas.
Juntar un montón de
Simulación Cerebral neuronas y esperar que
Funcional emerja algo interesante
no parece una vía plau-
sible para entender
cómo funciona algo tan
sofisticado como el
cerebro.
Spaun, el nuevo simula-
dor, es novedoso y muy
interesante. Junto con
OpenWorm está en la
línea de las simulacio-
nes funcionales. Esto
significa que pretende
simular tareas reales
que realizamos los
humanos.
Para ello, simula 2,5
millones de neuronas
agrupadas en áreas
cerebrales que real-
mente tenemos los
humanos. Subredes del
simulador se correspon-
den con áreas anatómi-
cas físicas como el área
visual en el lóbulo occi-
pital, el área motora,
funciones ejecutivas en
el lóbulo frontal y memo-

Capítulo 1 11
Robótica BEaM, Inteligencia artificial y lógica Difusa
ria de trabajo. También simula los ganglios conclusIón
basales, corresponsables del movimiento com-
plejo (afectados en el párkinson). Quiero concluir comentando que en 1987
El modelo recibe una imagen de 28×28 Martin Fischles y Oscar Firschein describieron
pixels como entrada, procesa la señal y genera los atributos de un agente inteligente. Al inten-
un output mediante un brazo simulado. Las tar describir con un mayor ámbito (no sólo la
neuronas individuales se comunican por seña- comunicación) los atributos de un agente inteli-
les eléctricas (potenciales de acción) y neuro- gente, la inteligencia artificial (IA) se ha expan-
transmisores. Aunque simplificado, el modelo dido a muchas áreas que han creado ramas de
capta muchos aspectos de neuroanatomía, investigación enormes y diferenciadas. Dichos
neurofisiología y comportamiento psicológico. atributos del agente inteligente son:
Esto queda demostrado en 8 tareas diferen-
tes. Por ejemplo: copia un dibujo, reconoce los Tiene actitudes mentales tales como creen-
números, los ordena, los cuenta, e incluso cias e intenciones.
completa una lista (2,3,4…). En la red hay dis- Tiene la capacidad de obtener conoci-
ponibles vídeos que permiten conocer mejor a miento, es decir, aprender.
Spaun. Algunas de las pruebas están extraídas Puede resolver problemas, incluso particio-
de test de inteligencia convencionales como el nando problemas complejos en otros más sim-
test de matrices de Raven. Spaun puntúa casi ples.
como un humano. Entiende. Posee la capacidad de crearle
Hasta ahora la carrera era conseguir una sentido, si es posible, a ideas ambiguas o con-
simulación del tamaño del cerebro humano. De tradictorias.
ahora en adelante, el reto es conseguir las Planifica, predice consecuencias, evalúa
mayores funciones biológicas y comportamien- alternativas (como en los juegos de ajedrez)
tos animales. Por el momento, Spaun es el Conoce los límites de su propias habilidades
ganador. y conocimientos.
El comportamiento es similar al humano. Puede distinguir a pesar de las similitud de
Reproduce errores similares y tiempos de res- las situaciones.
puesta parecidos (tareas más complejas llevan Puede ser original, creando incluso nuevos
tiempos de ejecución más complejos). conceptos o ideas, y hasta utilizando analo-
Si destruimos partes del modelo, podemos gías.
ver qué comportamientos fallan. O podemos Puede generalizar.
cambiar el funcionamiento de los neurotransmi- Puede percibir y modelar el mundo exterior.
sores y ver cómo se correlaciona con el com- Puede entender y utilizar el lenguaje y sus
portamiento. Así se puede observar qué ocurre símbolos.
en la edad avanzada con el envejecimiento
celular. La IA incluye características humanas tales
Están trabajando en un programa que no como el aprendizaje, la adaptación, el razona-
tiene instrucciones concretas sino recompensa miento, la autocorrección, el mejoramiento implí-
positiva o negativa. Este es un clásico ejemplo cito, y la percepción modular del mundo. Así,
de aprendizaje humano. podemos hablar ya no sólo de un objetivo, sino
Aunque esperan que el rendimiento esté de muchos, dependiendo del punto de vista o uti-
cerca del tiempo de respuesta real, en la actua- lidad que pueda encontrarse a la IA. J
lidad un segundo tarda horas en simularse.
Spaun es un salto en la simulación. Los des- bibliografía
lumbrantes ejercicios de supercomputación no http://elrincondelacienciaytecnologia.blogspot.com.ar
bastan. http://titoquintino.blogspot.com.ar
“Queremos simular conductas reales”. http://www.puntomag.com

12 Capítulo 1
C a p í t u lo 2

Robótica y L ógica D ifusa

R eDes N euRoNaLes
a RtificiaLes
De lo visto en el capítulo anterior se deduce que Inteligencia Artificial (IA) es el área
encargada de estudiar metodologías, procedimientos, arquitecturas, etc. que permitan
a una computadora (o a cualquier aparato con capacidad de procesar información)
implementar actividades que, por el momento, el hombre realiza mejor (adquirir cono-
cimientos, razonar y actuar). Algunos ejemplos de aplicación son: diagnóstico
médico, diagnóstico industrial, problemas de percepción (visión, habla), interpretación
de señales e imágenes, juegos, detección de virus en computadoras, navegación de
robots móviles, etc. Para que un robot pueda “emular” un sistema biológico suelen
emplearse algoritmos computacionales complejos denominados “redes neuronales
artificiales”. La unidad se denomina perceptrón y representa a las neuronas biológi-
cas, quienes poseen elementos especializados para recibir, integrar, conducir y trans-
mitir señales. El perceptrón simula matemáticamente una sola neurona y sus estudio
lo veremos a continuación.

Capítulo 2 13
Robótica BEaM, Inteligencia artificial y lógica Difusa
IntroduccIón El perceptrón simple lo que pretende, es si-
mular matemáticamente una sola neurona.
Una Red Neuronal Artificial es una estructu- Como vemos en la figura 2, posee entradas
ra computacional inspirada en el estudio de los y una función de transferencia de tipo umbral.
circuitos neuronales biológicos. Es decir, la Las entradas a la red son las componentes del
emulación mediante software y hardware, de vector de entrada X (las xi), la salida es Y y los
neuronas y sus conexiones. pesos (codificación de la intensidad de las si-
Hay muchos tipos diferentes de redes neu- napsis) son el arreglo de números wi. Ya vere-
ronales artificiales, desde relativamente sim- mos esto con más detalle.
ples hasta muy complejas, así como también Antes de proseguir veamos un poquito de
existen muchas teorías sobre cómo trabajan álgebra, a no asustarse, son sólo unas defini-
sus pares biológicas. ciones elementales para facilitarnos la tarea, ya
Comenzaremos estudiando una muy senci- que no es el propósito de este curso ahondar
lla que recibe el nombre de perceptrón simple, en álgebra.
incluso no se trata de una red en sí, sino de Entonces, se llama vector a un simple arre-
una neurona aislada. La utilidad de la misma es glo de números:
muy limitada, pero su comprensión nos permi-
tirá luego avanzar en el entendimiento de otras
redes.

Per­ceP­trón SIm­Ple A x1,x2, x3 les llamamos las componentes


xi . Así decimos que la entrada X es el vector
Las neuronas biológicas poseen elementos “columna”, por la disposición de sus números,
especializados para recibir, integrar, conducir y es decir en varios renglones.
transmitir señales, éstos son: las dendritas, el Y también tenemos el vector de “pesos”:
cuerpo celular, el axón y los terminales del
axón (figura 1).

Figura 1

14 Capítulo 2
Redes Neuronales artificiales
za” con que esa entrada está co-
Figura 2
nectada a la neurona, esto lo va
a determinar el valor de su res-
pectivo peso wi.
Así cada entrada se va a multipli-
car por su peso respectivo, y lue-
go el cuerpo neuronal “suma” to-
dos estos productos. Esta opera-
ción en álgebra se llama produc-
to escalar de vectores y se defi-
ne de la manera que vemos en la
fórmula de la tabla 1.
Ojo, las entradas pueden ser
más que tres o menos y por lo
tanto los componentes de cada
Tabla 1 vector también más que tres, es-
to se simboliza poniendo la su-
matoria desde i=1 hasta n.
Bien, no era complicado ¿no?.
Después esa suma pasa luego
por una función de activación f,
Tabla 2 que equivaldría a un umbral bio-
lógico, o sea si esta suma supe-
Que es un vector “renglón”. Ahora, volviendo ra cierto valor, entonces la salida se pone en
a la neurona artificial de la figura 2, veamos có- alto. En este caso usaremos la siguiente f,
mo ésta funciona. Cada entrada xi sería el equi- (figura 3).
valente a la señal, digamos un valor numérico, Por otra parte si volvemos al esquema de la
proveniente de otra neurona o de un sensor ex- neurona vemos otro valor: b1, este puede ser
terno. Cada entrada va a influir sobre el dispa- cero o uno, se le llama bias y lo que hace, en
ro de la neurona, cuánto influya va a depender caso de no ser cero, es lo siguiente (figura 4).
de la intensidad de esa sinapsis, o sea la “fuer- Desplaza el umbral por b1*w0, a los fines
prácticos b1 se trata como una entrada más
Figura 3 que, o es siempre cero o siempre uno, según
deseemos o no desplazar el umbral, esto le da
un grado más de libertad a la región de deci-
sión. Vea la fórmula de la Tabla 2. De esto, el
modelo matemático final de neurona queda (al-
goritmo 1):

Y = 1 si

Figura 4

Y = 0 si

Capítulo 2 15
Robótica BEaM, Inteligencia artificial y lógica Difusa
Bueno, hasta aquí sabemos cómo calcular apren­de­mos?­ Podemos observar que, desde
la salida de una neurona frente a una entrada niños vamos aprendiendo en base a prueba y
determinada. Ahora sabemos que los sistemas error, digamos que nuestra guía en el aprendi-
biológicos pueden aprender, entonces se plan- zaje es el error. Por ejemplo, al leer vemos una
tea la pregunta: ¿có­mo­ apren­de­ nues­tro­ per­- “a” y nos dicen que es una “a”, así la entrada es
cep­trón? “a”, la salida deseada es que pronunciemos “a”,
Y es allí donde volvemos a los pesos wi, son si decimos “e” nos corrigen, volvemos a inten-
éstos los que determinan el valor de la sumato- tar, hasta que frente a una “a” decimos “a”, es-
ria ante una determinada entrada, y de allí que te es un ejemplo muy simple, pero así es todo.
se active o no la salida Y. Fue esto lo que motivó a los primeros in-
Entonces cabe la pregunta: ¿su­pon­ga­mos vestigadores a pensar en el error entre la sali-
que­ en­con­tra­mos­ la­ ma­ne­ra­ pa­ra­ que­ el­ va­lor da deseada y la que la neurona proporciona
de­ los­ pe­sos­ cam­bie,­ adap­tán­do­se­ pa­ra­ dar ante una entrada como la herramienta guía
una­sa­li­da­de­sea­da­an­te­una­de­ter­mi­na­da­en­- para modificar los pesos. Así surge el algorit-
tra­da,­ en­ton­ces­ la­ red­ es­ta­ría­ apren­dien­do­ a mo de entrenamiento para el perceptrón sim-
res­pon­der­fren­te­a­una­en­tra­da? ple, que bien podemos ver esquematizado en
Y así es como nace el algoritmo de entrena- la figura 5.
miento, o sea lo que se hace computacional-
mente es mostrarle una determinada entrada Figura 5
(digamos un grupo de valores de xi, o sea un
vector X) a la red y simultáneamente mostrarle
la salida que deseamos frente a esa entrada.
Los pesos se van modificando y de esa mane-
ra la información queda en la intensidad de las
sinapsis, codificada en los pesos, al igual que
en las neuronas biológicas.
Esto se lleva a cabo mediante un proceso
que se llama entrenamiento, y una vez conclui-
do, si fue exitoso, y por lo tanto la red aprendió, Describimos a continuación este algoritmo
ésta debe dar la salida deseada al “ver” la en- de entrenamiento (algoritmo 2):
trada correspondiente.
O sea, las neuronas tienen dos modos de 1)­Ini­cia­li­zar­los­pe­sos­wi­con­va­lo­res­alea­to­-
funcionamiento, uno que es mientras aprenden rios­ me­no­res­ que­ 1,­ así­ la­ neu­ro­na­ co­mien­za
y por lo tanto modifican sus pesos y otro cuan- sin­“sa­ber”­na­da.
do habiendo aprendido se las usa con sus pe- 2)­Pre­sen­tar­al­Per­cep­trón­sim­ple­un­vec­tor
sos fijos para obtener la salida ante una entra- pa­trón­de­en­tra­das­y­la­sa­li­da­de­sea­da­D.
da determinada, aquí es el momento útil de la 3)­Cal­cu­lar­el­error­en­tre­la­sa­li­da­Y­y­la­sa­-
neurona. li­da­de­sea­da­D­(e­=­D­-­y)
4)­ Ajus­tar­ los­ pe­sos­ de­ la­ red­ se­gún­ el­ si­-
guien­te­al­go­rit­mo:
Al­go­rIt­mo de en­tre­nA­mIen­to

En realidad, en el entrenamiento lo que se


Don­de­­wi­(t­+­1)­es­el­nue­vo­pe­so,­­­wi (t)­es
tiene es un conjunto de entradas que represen-
tan distintas situaciones (patrones) y el conjun- el­pe­so­“vie­jo”,­e­es­el­error­y­­­un­pa­rá­me­tro­de
to de salidas deseadas correspondientes a ca- apren­di­za­je­ge­ne­ral­men­te­con­va­lor­1,­es­to­se
da situación. rea­li­za­pa­ra­ca­da­pe­so­­­wi.
Ahora, en nuestra vida cotidiana, ¿Có­mo 5)­Vol­ver­al­pa­so­2)­y­re­pe­tir­el­pro­ce­so.

16 Capítulo 2
Redes Neuronales artificiales
Los patrones de entrenamiento, es decir los estas herramientas, todo se esclarece. Pronto
vectores de entrada con su salida deseada se veremos lo satisfactorio que es comprender la
van mostrando a la red en forma aleatoria, un idea detrás de algo tan vigente como la IA (si-
número determinado de veces, hasta que ésta glas de Inteligencia Artificial en inglés).
aprende. Una vez que la neurona aprendió, los En el próximo capítulo estaremos entrenan-
pesos no se modifican más y esta se puede do el “cerebro” de un robot para recorrer labe-
usar para cualquier situación dentro de las que rintos, para lo cual necesitaremos varias neuro-
aprendió, o aún “nuevas” (esto se llama gene- nas.
ralización y lo veremos más adelante). Primero, lo que vamos a hacer es la resolu-
Bueno, creo que por ahora es suficiente teo- ción de un problema sumamente sencillo, que
ría, así que mejor algo de práctica para afirmar nos permitirá observar el funcionamiento de
y comprender lo que hemos visto. A no preocu- una neurona. Pero antes de proseguir con esto,
parse si pareció muy teórico o algo no quedó veamos con qué vamos a trabajar:
claro, notaremos que al ver cómo se emplean

PrácTica:
implementación de un
Perceptrón Simple en NePic
el SIS­te­mA ne­PIc un perceptrón simple mediante el software y
luego usarlo en un PI­cA­Xe, (ver Saber 205,
Para realizar las prácticas, me pareció ade- 211 o consultar el sitio web www.rev-ed.co.uk
cuado crear un pequeño software para el entre- para saber más de éstos).
namiento de neuronas y la generación del códi- Vamos a enseñarle a un perceptrón a resol-
go que vamos a emplear en los microcontrola- ver la función “OR”, este ejemplo es sumamen-
dores. Este software va ir creciendo con los ar- te simple, pero sirve para entender la idea, ade-
tículos. Nuestra primer práctica va ser entrenar más por tradición, así como al aprender a pro-
gramar uno aprende a escribir “HELLO WORD”
en pantalla, en IA es la función “OR” el primer
ejercicio .
Veamos nuestro software (que Ud. lo puede
bajar gratuitamente de nuestra web: www­.we­-
be­lec­tro­ni­ca­.co­m.mx, haciendo clic en el íco-
no password e introduciendo la clave ne­pic), Al
ejecutar el programa aparecerá la imagen de la
figura 6 y al hacer clic en el botón “Perceptrón
para OR” aparecerá la imagen de la figura 7;
note que posee una tabla que deberemos com-
pletar para que la red “aprenda” que es una
compuerta OR.
Para cargar la tabla y entrenar la red proce-
demos como sigue, por ejemplo para cargar el
segundo renglón hacemos clic en In1 y Out, o
sea los encendemos, y luego damos clic sobre
Figura 6 “cargar”, así en patrones cargados queda tal

Capítulo 2 17
Robótica BEaM, Inteligencia artificial y lógica Difusa
como se muestra en la figura Figura 7
8. Y así proseguimos hasta
cargar toda la tabla, clickean-
do los botones con la confi-
Cargamos­la­tabla­“OR”
guración deseada y a conti-
para­que­la­red­la­aprenda
nuación “cargar”, hasta que
ingresemos todos los renglo-
nes, como vemos en la figura
9.
De esta manera le esta-
mos mostrando a la red las
entradas con que se va a en-
contrar y la salida que desea-
mos para cada una de ellas
(patrones de entrenamiento) Figura 8
y le decimos el número de
veces que queremos se ha-
ga esto: observe nuevamen-
te la figura 7.

Figura 9

Luego presionamos “entrenar” con lo que el sos w11 y w12 (equivalentes a w1 y w2), que
software ejecuta el algoritmo de entrenamiento son los que codifican la solución del problema.
visto ( algoritmo 2), durante el número de veces El código en sí, no es más que el modelo ma-
elegido y va modificando los pesos. Finalmen- temático de la neurona (algoritmo 1) que vimos
te se enciende el indicador “LISTO”, entonces anteriormente implementado y ejecutado, vez
presionamos “Generar código BASIC”, ésto ge- tras vez, en software. Y podríamos haberlo ge-
nera un código para PI­cA­Xe que se guardará nerado mediante el editor de flujo de PICAXE
con el nombre de “C:\Archivos de programa- (en el “PICAXE Programming Editor”, se puede
\Nepic\ NeurOR.bas”, (se puede abrir con edi- bajar gratis de www.rev-ed.co.uk), y simularlo
tor de textos). con el simulador, de la forma que se ve en la fi-
El código BASIC generado es el que vemos gura 11.
en figura 10. En el problema de la figura 12 incluso “a ojo”
El entrenamiento, lo que genera son los pe- podríamos haber obtenido los pesos w1 y w2,

18 Capítulo 2
Redes Neuronales artificiales
Figura 10

Figura 12

Figura 11

Figura 13

mos abrir este código con el “PICAXE Program-


ming Editor” y pasarlo a código ejecutable.
ya que por claridad resolvimos un ejemplo muy Bueno, no queda más que descargar el có-
sencillo, en el que incluso las entradas son bi- digo ejecutable a un circuito experimental como
narias, pero más adelante veremos que no es se ve en la figura 13, que podemos hallar en la
así en problemas de mayor magnitud, donde página www.rev-ed.co.uk, específicamente en:
son muchos pesos y con números reales.
Ahora, para probar esto en hardware, debe- www­.rev-ed­.co.uk­/doc­s/a­xe001_pcb.pdf­

Capítulo 2 19
Robótica BEaM, Inteligencia artificial y lógica Difusa
Recomiendo usar el PICA- Figura 14
XE 18X, para que nos sirva
para los códigos siguientes.
Armaremos este circuito y
nos servirá para todos los ex-
perimentos, en este experi-
mento le agregamos Led1
(será la salida y), s2 (será la
entrada x1) y s3 (será la en-
trada x2):
Y listo, podemos verificar
cómo los interruptores s2 y s3
responden según la tabla OR,
encendiendo y apagando el
Led1. Quizás parezca inútil
tanto proceso para una sim-
ple tabla OR, pero lo cierto es
que nuestro programa “apren- Figura 15
dió” a responder, y ése es el
camino hacia la IA.
Como dijimos, en la próxi-
ma parte veremos las verda-
deras redes, los “perceptro-
nes multicapa” y estaremos
entrenando el “cerebro” de un
robot para recorrer laberintos,
para lo cual necesitaremos de
varias neuronas.
Algunos de los proyectos
experimentales, en los que in-
tentaremos mostrar cómo se
utilizan estas herramientas,
serán: Figura 16

•­ Per­cep­trón­ sim­ple­ y­ per­-


cep­trón­ mul­ti­ca­pa­ (ca­paz­ de
apren­der­ la­ res­pues­ta­ a­ en­-
tra­das­sen­ci­llas).­(Ver­la­fi­gu­-
ra­14).
•­“En­tre­nar­el­ce­re­bro”­de­un
ro­bot­ pa­ra­ re­co­rrer­ la­be­rin­tos,
co­mo­se­ve­en­la­fi­gu­ra­15.
•­ Di­se­ñar­ un­ con­trol­ sim­-
ple,­ del­ mo­vi­mien­to­ de­ ro­ta­- Lista de Materiales: TB1: Conector­de­los­usados C1: 100µF­-­capacitor­elec-
ción­de­un­bra­zo­ro­bot,­a­par­- en­baterías­de­9V,­con­portapila trolítico
IC1: Picaxe18­-­Microcontrolador de­6V S1: miniature­push­reset­switch
tir­ de­ las­ se­ña­les­ de­ elec­tro­-
IC2: ULN2803A­-­C.­Integrado R1 a R6: 10kΩ­1/4W S2: switch­miniatura
mio­gra­fía­ de­ una­ per­so­na CT1: 3,5mm­­-­Conector R7: 22kΩ­1/4W S3: switch­miniatura
(figura­16).­J miniatura­estereo R8: 4k7­1/4W Led 1: diodo­emisor­de­luz

20 Capítulo 2
C a p í t u lo 3

R edes N euRoNales e I NtelIgeNcIa a RtIfIcIal


I mplemeNtacIóN de uN c eRebRo
paRa Robot m óvIl
La navegación autónoma de robots en entornos desconocidos constituye uno de los mayo-
res retos tecnológicos en el campo de la robótica móvil . Se han realizado muchas investi-
gaciones centrando su atención en el desarrollo de técnicas de control y navegación de
robots. Entre varios enfoques para resolver este problema se encuentran las Redes
Neuronales. Aquí se emplean un tipo muy conocido de las mismas, llamadas “Perceptrones
Multicapa”, para un acercamiento a este problema. Los Perceptrones Multicapa son, quizás,
las redes neuronales artificiales más conocidas. Estos tienen la capacidad de “generaliza-
ción”, propiedad que los hace muy adecuados para su empleo en la navegación de robots
en entornos desconocidos. Estas redes permiten dotar a los dispositivos, además de la
posibilidad de aprender, de la habilidad para “tomar decisiones acertadas” ante situaciones
nuevas; por “analogía” con las ya conocidas. En este capítulo veremos cómo es posible
“diseñar” un cerebro virtual para dotar a un robot de cierta inteligencia.

In­tro­duc­cIón sos escogidos inicialmente en forma aleatoria.


En una fase en la que éste aprende, la entra-
En el capítulo anterior vimos nuestra prime- da es comparada con un patrón preestableci-
ra “red” neuronal, el Perceptrón simple (PS). do para determinar la salida de la red. Si en la
Este consiste en una suma de las señales de comparación, la suma de las entradas multipli-
entrada, multiplicadas por unos valores de pe- cadas por los pesos es mayor o igual que el

Capítulo 3 21
Robótica BEaM, Inteligencia artificial y lógica Difusa
patrón preestablecido, la salida de la red es operación lógica XOR (OR
Tabla 1
uno (1), en caso contrario la salida es cero (0). Exclusivo), para esto sólo
El Perceptrón es un dispositivo que, en su con- tendríamos que repetir el ex-
figuración inicial, no está en capacidad de dis- perimento del artículo ante-
tinguir patrones de entrada muy complejos, sin rior con la tabla 1.
embargo, mediante un proceso de aprendizaje Y notar que no la
es apto para adquirir esta capacidad. En esen- aprende. Bueno, veamos en-
cia, el entrenamiento implica un proceso de re- tonces qué se propuso frente a estas limitacio-
fuerzo, mediante el cual los pesos que codifi- nes.
can las sinapsis, se incrementan o se decre-
mentan. Esto dependiendo de si las dendritas
contribuyen o no a las respuestas correctas del El PEr­cEP­trón Mul­tI­ca­Pa (MlP)­­
Perceptrón. La red tipo Perceptrón fue inventa-
da por el psicólogo Frank Rosenblatt en el año Primero cabe mencionar, como es obvio, que
1957. Su intención era ilustrar algunas propie- para tener varias entradas y salidas, se pue-
dades fundamentales de los sistemas
inteligentes en general, sin entrar en
mayores detalles con respecto a con-
diciones específicas y desconocidas
para organismos biológicos concre-
tos. Al inicio del desarrollo de los sis-
temas de inteligencia artificial, se en-
contró gran similitud entre su compor-
tamiento y el de los sistemas biológi-
cos y en principio se creyó que este
modelo podía computar cualquier fun-
ción aritmética o lógica.
En 1969 Marvin Minsky y Seymour
Papert publicaron su libro: "Percep-
trons: An introduction to Computatio-
nal Geometry", el cual para muchos,
significó el final de las redes neurona-
Figura 1
les. En él se presentaba un análisis
detallado del Perceptrón, en términos
de sus capacidades y limitaciones, en
especial en cuanto a las restricciones
que existen para los problemas que
una red tipo Perceptrón puede resol-
ver; la mayor desventaja de este tipo
de redes es su incapacidad para solu-
cionar problemas que no sean lineal-
mente separables. Como dijimos, no
ahondaremos en álgebra, sino vere-
mos casos prácticos, así en el artícu-
lo anterior vimos cómo entrenar un
PS, para resolver la operación lógica
OR, ahora podemos verificar que éste
es incapaz de resolver por ejemplo la Figura 2

22 Capítulo 3
Implementación de un Cerebro para Robot Móvil
Figura 3 Así el funcionamiento de un PMC es
básicamente: se aplica una entrada
cuya salida se conoce, luego se cal-
cula primero la salida de las neuronas
de entrada, estas salidas son las en-
tradas de las neuronas de la capa
oculta, con estas entradas se calcula
la salida de las neuronas ocultas, y
con éstas como entrada para las neu-
ronas de salida, se calculan las sali-
das finales.
Esta es la fase hacia delante, por así
decirlo, en la red.
Luego se obtiene el error con respec-
to a la señal deseada y finalmente es-
te error se retro propaga (de atrás ha-
den conectar Perceptrones simples como ve- cia delante) modificando los pesos.
mos en la figura 1. No trataremos la parte matemática de cómo
Pero con esto no se amplía el tipo de funcio- se hace esto, pero mencionaremos que las
nes que puede aprender la red. Así es como neuronas de la capa oculta usan como regla de
nace la idea ( proveniente también de copiar propagación, la suma ponderada de las entra-
los sistemas biológicos), de hacer redes que das con los pesos sinápticos wij y sobre esa
tengan más de una capa de neuronas, ver figu- suma ponderada se aplica una función de
ra 2. transferencia de tipo sigmoide (figura 4) (recor-
A partir de ahora, a cada neurona de la red, demos que en el PS, era simplemente un um-
algunas veces la llamaremos nodo. bral), que es acotada en respuesta. Similar-
Así, por ejemplo, a una red multicapa con mente en la retropropagación, el error en los
dos neuronas de entrada, dos ocultas y dos de nodos de las capas ocultas es proporcional a la
salida, la podemos graficar como sigue (figura sumatoria de los gradientes de los nodos de la
3). capa siguiente pesados por los pesos de cone-
El entrenamiento de esta red neuronal con- xión.
sistirá, al igual que en el perceptrón simple, en La aparición de una función de activación
presentar las entradas, junto con las salidas del tipo sigmoide es debido a restricciones
deseadas para cada una de ellas, y modificar analíticas en los algoritmos de entrenamiento.
los pesos de acuerdo al error (diferencia entre Una función de activación de este tipo es:
la salida deseada y la obtenida). 1
La principal dificultad en el entrenamiento y (p)­=­­––––––
de redes de varias capas es encontrar los erro- 1­-­e -p
res asociados con las capas ocultas; es decir, donde x es la sumatoria de las entradas al
en las capas que no son la de salida (sólo se nodo pesadas por los pesos de conexión y y(p)
tiene salida deseada en las capas de salida). la salida del nodo correspondiente (o sea si re-
Esto es debido a que los errores son nece- cordamos del artículo anterior):
sarios para el aprendizaje, para saber cómo
modificar los pesos de las neuronas en las ca-
pas ocultas. Así se da origen a algoritmos muy
ingeniosos, el precursor y más conocido por su
simplicidad, es el que recibió el nombre de re-
tropropagación del error (backpropagation). Observe la figura 4.

Capítulo 3 23
Robótica BEaM, Inteligencia artificial y lógica Difusa
Figura 4 sión difiere según la capa que se esté adap-
tando (el subíndice i es la capa y el j es la neu-
rona de la capa).
Para nodos de la capa de salida:

donde dij es la respuesta deseada.


Para unidades en las capas escondidas:
De todo esto, luego de algún trabajo mate-
mático, surge el algoritmo que se usa en el en-
trenamiento de la red.
n son las neuronas de la capa siguiente.

4. Volver al paso 2. y repetir el proceso has-


al­go­rIt­Mo dE rE­tro­Pro­Pa­ga­cIón ta que los pesos converjan ( O sea el error en-
tre las salidas deseadas y las obtenidas sea
1. Inicializar los pesos aleatoriamente y con menor que un valor deseado).
valores menores que 1. Generalmente estos pasos (de 1 a 4) se
2. Escoger un patrón del conjunto de entre- realizan un número determinado de veces, lla-
namiento, calcular la salida (para esto se avan- madas épocas de entrenamiento y luego se
za neurona por neurona, capa por capa, hasta observa si la red aprendió.
llegar a la salida, al igual que en el PS) y el Este es un modo de entrenamiento, existen
error asociado en cada nodo de la capa de sa- otros, pero por ahora con éste es suficiente.
lida. Una vez entrenada la red, se puede usar de
3.­Adaptar los pesos: empezando con la ca- igual manera que vimos con el Perceptrón
pa de salida, y “modificando hacia atrás”, de la Simple. No existe un límite para fijar la canti-
siguiente manera: dad de capas de un PMC, pero se ha demos-
trado que un PMC con una capa oculta y con
wij (k­+­1)­=­wij (k)­+­a­.­dij . Yij el número suficiente de nodos, es capaz de so-
lucionar casi cualquier problema. Si se agrega
donde Yij es la salida real de la capa ante-
una capa oculta más, un PMC soluciona cual-
rior, a es un parámetro de aprendizaje (gene- quier tipo de problemas y en forma más efi-
ralmente 0.5) y dij es el gradiente cuya expre- ciente que con una sola.

PrácTica:
implementación de un
robot Móvil con NePic
IntroduccIón que navegue por el entorno, evitando los obs-
táculos y alcanzando la meta. Existe varios en-
A grandes rasgos, el problema puede enun- foques para resolver este problema, y entre
ciarse de la siguiente manera: un robot móvil ellos se encuentran las técnicas de IA como
se encuentra situado en un determinado am- son la Lógica Fuzzy y las Redes Neuronales.
biente, que contiene una serie de obstáculos y Estas técnicas han permitido aproximarse a la
una meta. Se trata de controlar el robot para solución de muchos problemas de control debi-

24 Capítulo 3
Implementación de un Cerebro para Robot Móvil
do a su capacidad de emular algunas caracte- No se puede pretender que el robot aprenda
rísticas propias de los humanos. Ahora tratare- todas las situaciones que posiblemente se va-
mos de aprovechar la capacidad de generaliza- yan a presentar durante la navegación. A nivel
ción de las redes neuronales, para resolver los de memoria se recargaría el sistema con dema-
problemas que plantea la navegación de robots siada información que se puede considerar re-
en ambientes desconocidos. dundante. Para resolver este problema las per-
Generalización en IA es el nombre que re- sonas recurrimos al proceso de generalización,
cibe una característica de las redes neuronales que nos permite solucionar un caso particular,
artificiales. Es decir, si una red neuronal se en- cuando se asemeja a un caso general conoci-
trena con un número suficiente de patrones, y do. Una de las principales características de las
luego frente a un patrón que no pertenece al redes neuronales es precisamente su capaci-
grupo con el que se la entrenó (una situación dad de generalización, por tanto, son una he-
nueva), da una salida correcta (que resuelve la rramienta ideal para proporcionar al robot la ca-
situación), entonces se dice que la red genera- pacidad de decidir en cualquier situación, inclu-
liza bien. so cuando dicha situación no se haya presenta-
Para que un robot pueda navegar en un am- do anteriormente.
biente desconocido, tiene que ser capaz de
efectuar unos movimientos tan intuitivos como
los que realizaría una persona que se encuen- un ro­bot Pa­ra Ex­PE­rI­MEn­tar
tra en su misma situación.
Los humanos no tenemos un mapa o un sis- De forma experimental en nuestro proyecto
tema de coordenadas en base al cual navega- podemos montar un pequeño robot, para esto
mos, simplemente observamos el entorno y va- debemos haber armado inicialmente la placa
mos decidiendo en cada instante la acción que del circuito experimental que les hablé en el ar-
hemos de ejecutar para continuar avanzando tículo anterior, (que podemos hallar en la pági-
hacia nuestro objetivo. Lo que se pretende es na www­.rev-ed­.co.uk, específicamente en
que el robot actúe de igual forma que una per- www­.rev-ed­.co.uk­/doc­s/a­xe001_pcb.pdf ).
sona, es decir, que capte información sobre su Ya que, como dijimos vamos a usar los Pica-
entorno a través de los sensores y en función xe para experimentar, (ver Saber 205 , 211 o
de ella “decida” qué acción debe llevar a cabo consultar el sitio web www­.rev-ed­.co.uk para
para continuar su camino. saber más de estos).
Recomiendo usar el PICAXE 18X, pa-
ra que nos sirva para otros experimen-
tos.
Así, teniendo la placa con el Picaxe 18,
ésta va ser el “cerebro” del robot, aho-
ra necesitamos la estructura física, y
como para que cualquiera pueda expe-
rimentar, vamos a usar, y ¿por que
no?, algunos elementos de desecho.
Por ejemplo, ¿quién no tiene CD-
ROMs viejos? Bueno vamos a sacrifi-
car dos de éstos.
Los materiales que vamos a necesitar
serán los que podemos observar en la
figura 5.
Bueno, vamos armar un robot experi-
Figura 5 mental, nuestro primer experimento

Capítulo 3 25
Robótica BEaM, Inteligencia artificial y lógica Difusa
será muy sencillo y le Figura 6
permitirá al robot mover-
se por el espacio. El
otro, que es más sofisti-
cado, lo simularemos en
parte, ya que requiere
realmente de algunos
materiales más, pero no
es imposible de realizar
y proporciona una clara
noción de la utilidad de
las redes.
En cuanto a los mate-
riales sólo mencioné las
características genera-
les, de manera que cada
uno pueda hacerlo con
lo que tenga en casa.
Sólo es conveniente que
las ruedas sean peque- Figura 7
ñas.
Los chinos dicen:
“Una imagen vale más
que mil palabras”, de
manera que en el en-
samblado procuraré va-
lerme más que nada de
esquemas.
Así el CD que irá en
la parte de abajo deberá
quedar como en la figura
6.
Como sensores en
este primer experimento
usaremos los interrupto-
res de contacto, éstos
deben ser de un tipo
muy común, lo que tene-
mos que lograr es que
se accionen con facili-
dad cuando contactan con algún objeto al cos- más o menos la relación que vemos en esa fi-
tado del robot. gura.
Para lograr esto, le colocaremos como una El CD superior deberá quedar como en la fi-
especie de “bigotes”, es decir le pegaremos gura 8:
unas barritas de plástico flexible. Entonces una vez armado, nuestro robot se
La disposición de estas barritas la podemos deberá ver como la figura 9.
observar en la figura 7 y su largo podemos ele- Es importante notar que la superficie en la
girlo experimentalmente, pero manteniendo que se moverá nuestro robot deberá ser com-

26 Capítulo 3
Implementación de un Cerebro para Robot Móvil
1- Cable del interruptor si-
Figura 8
tuado del lado izquierdo
del robot (ver figura 7).
2- El otro cable del inte-
rruptor situado del lado iz-
quierdo del robot (ver fi-
gura 7).
3- Cable del interruptor si-
tuado del lado derecho
del robot (ver figura 7).
4- El otro cable del inte-
rruptor situado del lado
derecho del robot (ver fi-
gura 7).
5- Negativo de la batería.
6- Positivo de la batería
(conviene interponer un
interruptor para comodi-
dad).

Es importante tener en
cuenta que si se trata de
pletamente lisa, de manera que los soportes no motores de corriente continua, como es este
se traben, por ejemplo un mesa con cubierta de caso, depende como los conectemos, van a gi-
fórmica. rar hacia un lado u otro.
A continuación veremos cómo realizar las Para asegurarnos de hacer bien las conexio-
conexiones, para esto nos guiaremos por la fi- nes lo mejor es, una vez puestos en su lugar,
gura 10, los números dibujados sobre la placa, probar con la fuente directamente como deben
nos señalan lo que hay que conectar en esos ir conectadas las polaridades para que cada
pines marcados: motor gire en un sentido que provoque el avan-
ce del robot.
Figura 9 Una vez logrado esto, mar-
camos cada cable del mo-
tor según qué polaridad re-
ciba de la batería como + o
-. Entonces continuamos:

7- El cable marcado como


negativo del motor situado
del lado izquierdo del ro-
bot.
8- El cable marcado como
positivo del motor situado
del lado izquierdo del ro-
bot.
9- El cable marcado como
negativo del motor situado
del lado derecho del robot.

Capítulo 3 27
Robótica BEaM, Inteligencia artificial y lógica Difusa
10- El cable marcado como positivo del mo-
tor situado del lado derecho del robot. Observe
la figura 10.

la rEd quE usa­rE­Mos

Una red muy apropiada para el control del


robot es un perceptrón multicapa, ya que debi-
do a sus características es muy válido para re-
solver problemas de clasificación. Además pre-
senta una estructura comparativamente senci-
lla, que permite una relativa sencillez en la im-
plementación en un microcontrolador.
En la figura 11 vemos una de las estructu-
ras que emplearemos en este primer experi-
mento: Figura 10
Resta ahora ver cómo implementar y entre-
nar esta red con NePic, y así programar la pla-
ca “cerebro” de nuestro robot. Luego planteare-
mos y simularemos un caso más completo de
navegación de robots móviles, con más senso-
res de proximidad y un sensor de orientación,
lo cual permitirá alcanzar un objetivo deseado
en el laberinto en el que el robot se mueve. Una
vez realizados estos experimentos veremos
más claramente la utilidad de las redes neuro-
nales multicapa. Figura 11

el robot tal como lo dejamos en el artículo pa-


rE­gIo­nEs dE dE­cI­sIón sado (recomiendo tenerlo a mano). Con la con-
figuración que éste tiene, como vemos en la fi-
Bueno, vayamos a nuestro robot. En el pri- gura 12, no son demasiadas las opciones, tan-
mer experimento que realizaremos, usaremos to en lo relativo a la información que obtenga

Figura 12

28 Capítulo 3
Implementación de un Cerebro para Robot Móvil
del ambiente, como las posibilidades de movi- ra usaremos el robot tal cual está, ya que nos
miento. servirá para analizar varios aspectos.
En esta figura podemos apreciar que si el El problema como está es muy sencillo, y se
robot hace contacto con un obstáculo con su puede solucionar con dos Perceptrones sim-
antena, el interruptor correspondiente envía ples. Esto nos permitirá entender lo que men-
una señal en alto. Para evadir el objeto el robot cioné en el artículo anterior: “para que un pro-
deberá apagar su motor derecho y mantener blema se pueda resolver con un perceptrón
encendido el izquierdo, hasta alejarse del obs- simple (PS), sus soluciones deben ser lineal-
táculo (girando a su derecha) , luego volver a mente separables”, ésta era la gran limitación
encender los dos. del PS.
Para lograr esto construimos una tabla con De manera que con una estructura como la
las opciones y los resultados esperados: siguiente (figura 13), estaría solucionado (a no
preocuparse, pronto veremos un PMC).
En­tra­das sa­li­das
X1=0 Y1=1
X2=0 Y2=1
X1=0 Y1=0
X2=1 Y2=1
X1=1 Y1=1
X2=0 Y2=0

En esta tabla, X1 es la señal proveniente del


Figura 13
interruptor 1 que ingresa en In1, X2 es la señal
proveniente del interruptor 2 que ingresa en
In2, y Y1, Y2 son las salidas hacia los motores Analicemos cada neurona por separado, y
izquierdo y derecho respectivamente. veamos su espacio solución.
Así, si ningún interruptor está cerrado (no Para la neurona 1 (figura 14), ésta deberá
hay contacto con objeto), el robot debe avanzar funcionar de manera que:
hacia adelante, para lo cual debe enviar alimen-
tación (nivel alto) a ambos motores. • X1=0, X2=0 => Y1=1
En el segundo caso el robot hace contacto • X1=0, X2=1 => Y1=0
con un objeto a su izquierda, entonces debe gi- • X1=1, X2=0 => Y1=1
rar a la derecha, para esto apaga el motor de-
recho (nivel bajo) y mantiene encendido el iz-
quierdo. Similarmente para un objeto a la iz-
quierda.
Cabe mencionar que suponemos que el ro-
bot no choca de frente con un objeto.
Debido al tipo de integrado al que se hallan
conectados los motores (un simple UL-
Figura 14
N2803A), éstos no podrán girar en reversa, así
los motores sólo pueden moverse hacia ade-
lante, lo cual es una limitación bastante grande, Esta información la podemos colocar toda
la opción para obtener reversa es usar el junta en un gráfico cartesiano, con X1 en las
L293D (para esto ver en la página www­.rev-ed­- abscisas, X2 en las ordenadas, Y1=1 marcado
.co.uk, específicamente en www­.rev-ed­- con “x” y Y1=0 marcado con “o”, como vemos
.co.uk­/doc­s/a­xe020.pdf) y colocarle interrup- en la figura 15.
tor frontal como una entrada más, pero por aho- Este gráfico recibe el nombre de región de

Capítulo 3 29
Robótica BEaM, Inteligencia artificial y lógica Difusa
Figura 15 . En la figura 17 vemos, de acuerdo que forma
de región de decisión tengamos, qué estructu-
ra de neurona deberíamos usar.
No existe un límite para fijar la cantidad de
capas de un PMC, pero se ha demostrado que
un PMC con una capa oculta (total dos capas)
y con el número suficiente de nodos, es capaz
de solucionar casi cualquier problema. Si se
agrega una capa oculta más (total tres capas),
decisión y en este caso vemos que para sepa- un PMC soluciona cualquier tipo de problemas
rar los dos tipos de decisiones que tenemos y en forma más eficiente que con una sola.
nos basta con una línea recta (figura 16), de Bueno, por ahora llegamos hasta aquí.
ahí que digamos que el PS sólo soluciona pro- Volviendo a nuestro caso del robot con dos
blemas linealmente separables. “antenas”, podemos ver que la neurona dos va
a funcionar similar, sólo que de manera diame-
Figura 16 tralmente opuesta.
Así, nuestro primer experimento será entre-
nar de esta forma simple a nuestro robot.

PrIMEra PráctIca

Para entrenar el circuito necesitamos la ver-


sión actualizada de NePic (se lo puede bajar
También podemos ver en el caso de la tabla gratuitamente de nuestra web: www­.we­be­lec­-
“OR”, si nos tomamos el trabajo de graficar, tro­ni­ca­.co­m.mx, haciendo clic en el ícono
que su solución es una línea recta que pasa password e introduciendo la clave ne­pic2).
por el origen, por lo que con un PS sin bias, lo Una vez instalada esta aplicación ingresamos
solucionábamos. en “Perceptrón completo”, desde la pantalla de
Cabe mencionar que la señal de bias lo que opciones, como vemos en la figura 18.
hace es proporcionar una ordenada al origen a Luego procedemos al igual que con la fun-
la recta, por eso decíamos que le añade un ción “OR”, cargamos los patrones (tabla) me-
grado de libertad más a la
neurona (ver primer artícu-
lo). Como pasa en el caso
de la función “XOR”, ya no
basta con una recta para
separar las soluciones, así
también en problemas más
sofisticados; como por
ejemplo si se dispone de
imágenes de un equipo de
diagnóstico médico y se
quiere enseñar a una red a
detectar el cáncer, ya los
espacios soluciones pre-
sentan regiones de deci-
sión en formas complicadas Figura 17

30 Capítulo 3
Implementación de un Cerebro para Robot Móvil
Figura 20

Figura 18

Figura 19 BASIC”, (figura 19) esto genera un código para


PICAXE que se guardará con el nombre:

C:\Archivos de programa\Nepic\ Robot1.bas

Nota: se puede abrir con editor de textos).


El código BASIC generado es el que vemos
diante el mismo método anterior, luego presio- en la figura 20 .
namos “entrenar” y finalmente “Generar código El entrenamiento, lo que genera son los pe-
sos w11, w12, w13 y w14 (equivalen-
Figura 21 tes a w1, w2, w3 y w4), que son los
que codifican la solución del proble-
ma. Nuevamente, al ser un problema
muy sencillo, los pesos son casi “in-
tuitivos”. Una vez más podríamos ha-
ber generado el código mediante el
editor de flujo de PICAXE (en el “PI-
CAXE Programming Editor”, se pue-
de bajar gratis de www.rev-ed.co.uk),
y simularlo con el simulador, de la
forma que vemos en la figura 21.
En la figura 22 se puede ver cómo se
configuran las variables de entrada y
de salida en el Editor de Programas
de PICAXE.
En la implementación en microcon-

Capítulo 3 31
Robótica BEaM, Inteligencia artificial y lógica Difusa
trolador, verán que utilicé la función de activa- Figura 22
ción f invertida (vea el capítulo 2), en este caso
fue por sencillez y por la imposibilidad de traba-
jar con números negativos con PICAXE, lo que
me llevó a cambiar esto, para lograr la pendien-
te negativa que tiene la recta que separa las
regiones de decisión. Más adelante, en poste-
riores experimentos posiblemente usaremos
algunos artilugios que nos permitan codificar
números negativos en Picaxes (con PICs co-
munes se emplean los números complemento
de dos, pero ya que aquí esto no es posible,
emplearemos otras estrategias). Como hemos
visto hasta ahora, las redes neuronales nos sir-
ven por ejemplo, para resolver problemas co-
mo el aprendizaje (en dispositivos más sofisti-
cados los mismos pueden estar dotados del al-
goritmo de aprendizaje). Pero esta flexibilidad
también implica un costo computacional más
elevado (es decir se emplea más recursos, por
ejemplo: memoria).
Volviendo a nuestro robot, no queda más
que abrir el código basic con el “PICAXE Pro-
gramming Editor” , pasarlo a código ejecutable
y luego descargar el código ejecutable al Pica- mos el sistema de sensores. De todas mane-
xe 18 del circuito experimental que hace de ras, sólo lo simularemos con NePic, mediante
“cerebro” del robot. Y listo!, ya puede empezar un pequeño módulo que le agregué, debido a
a funcionar. Hasta acá bien ¿y los PMC?, ¿qué que conseguir los sensores de ultrasonido que
pasó? En el siguiente experimento nos valdre- requiere y una brújula electrónica, junto a su
mos de éstos para plantear el diseño de un dis- acondicionamiento, puede ser algo caro y la
positivo, que actúe de manera más similar a idea es como dijimos, aprender en forma eco-
una persona en un ambiente desconocido. nómica.

Figura 23
sEgunda PráctIca

Ahora en este caso su-


pondremos un robot que
parte de una posición cual-
quiera en un laberinto y que
debe ser capaz de alcanzar
una determinada meta (fi-
gura 23).
Para que el robot tenga
más “percepción” del am-
biente y pueda moverse con
más soltura, sin colisionar
con los objetos, rediseña-

32 Capítulo 3
Implementación de un Cerebro para Robot Móvil
De todas formas se Pero por ahora quedémonos con la idea.
pueden armar de Veamos, el ambiente donde navega el robot es
manera relativa- un cuadrado, en su interior se encuentran distri-
mente sencilla buidos en forma aleatoria varios obstáculos que
usando mouses en el robot deberá evitar.
desuso, ya que los Así, las variables de interés para el robot son
LEDs infrarrojos de la presencia de obstáculos y su orientación res-
Figura 24
éstos, con una pe- pecto a la meta. Entonces el robot está equipa-
do con cinco sensores de proximidad que
Figura 25 se encuentran uniformemente distribuidos
en la parte delantera (ver figura 24).
Estos sensores tienen la capacidad de de-
tectar la presencia de un obstáculo y me-
dir la distancia a la que se encuentra. En
este caso se ha considerado que única-
mente son de dos estados, de forma que
si se detecta un objeto se activará la señal
lógica 1 y si no la señal activa será un 0
(esto para facilitar la comprensión). El
campo de acción de los ultrasonidos lo su-
ponemos de un ángulo de unos 33º de
apertura y 22,5 cm de alcance.
También por simplicidad supondremos
que S5 y S4 así como S1 y S2 trabajan de
a pares como un solo sensor, así tenemos
el equivalente de 3 sensores a la entrada
(figura 25).
En cuanto a la brújula, nos dará un uno si
queña adaptación se pueden emplear de ma- el robot está dentro de los 0 y + 180 grados
nera muy satisfactoria como detectores de pro- apuntando hacia la meta y un cero si está en la
ximidad. dirección contraria (+180 y +360), ver figura 26.
Bueno, la red elegida es
Figura 26 un PMC, debido a que es-
te tipo de redes por sus
características, como ya
vimos, son muy válidas
para resolver problemas
de clasificación como el
que nos ocupa.
A esto cabe añadir que
presentan una arquitectu-
ra relativamente sencilla.
En la figura 27 se muestra
la estructura de la red em-
pleada compuesta por
cuatro entradas, cuatro
neuronas en la capa ocul-
ta y dos en la de salida; to-

Capítulo 3 33
Robótica BEaM, Inteligencia artificial y lógica Difusa
Figura 27 sus propios patrones de movimiento, esto nos
dará una idea experimental de cómo aprende
el robot, de todas formas en una aplicación real
son necesarias las funciones.
Lo que tenemos que hacer es imaginar to-
das aquellas situaciones con que se puede en-
contrar el aparato y de ahí extraer el valor que
nos entregarían los sensores (entrada de nues-
tra red) y lo que desearíamos a la salida.
Puede ver 2 ejemplos en figura 28.
das ellas con función de activación del tipo sig- De esta forma podemos generar conjuntos
moidal.
Una de las características
más destacables de las redes
neuronales, es que como vimos,
aprenden a partir de ejemplos.
Para poder llevar a cabo el pro-
ceso de entrenamiento, es nece-
sario recopilar una gran cantidad
de datos, los suficientes para
que la red pueda aprender a de-
sempeñar la tarea para la que
fue creada. En este caso, los
ejemplos (patrones) van a ser
una serie de trayectorias como
la que se muestra en la figura
23, a partir de las cuales se van
a extraer todos los parámetros
que componen los vectores de
entrada y salida de la red. Figura 28
Para generar estas trayecto-
rias, lo ideal sería poder captar
la secuencia de movimientos
que efectuaría una persona que
guiase el robot. Como esto no es
posible, hay que recurrir a otras
alternativas como utilizar alguna
serie de funciones programadas
en algún software con capaci-
dad de procesamiento numérico,
que permitan extraer los datos
de las trayectorias trazadas.
Como esto es algo complica-
do recurriremos a un método
manual que es más didáctico,
plantearemos un par de situacio-
nes y cómo crear los patrones y
dejaremos que el lector genere

34 Capítulo 3
Implementación de un Cerebro para Robot Móvil

Figura 30

Figura 29

de patrones que luego cargaremos y entrenare-


mos. Por ahora el simulador sólo muestra los
dos ejemplos ya propuestos, en próximas edi-
ciones concluiré un módulo de entrenamiento
más avanzado y hablaremos de softwares gra-
tuitos disponibles en Internet. Esta vez ingresa-
mos en “Perceptrón Multicapa “ (figura 29) y
luego presionamos “Probar en simulador” (figu-
ra 30) donde luego de encender el robot, pode-
mos verificar que éste se comporte como le en-
señamos, encendiendo o apagando el motor
correspondiente, según las acciones que ejecu-
temos sobre sus sensores (sensores de ultra-
sonido y brújula), ver figura 31.
Veamos ahora un ejemplo más, de otra for-
ma en que podemos usar las redes para nave-
gación de robots. Supongamos que tenemos el
Figura 31 siguiente esquema (figura 32).

Figura 32

Capítulo 3 35
Robótica BEaM, Inteligencia artificial y lógica Difusa
Si por ejemplo la videocámara le
entrega a la red alguna de las for-
mas de la figura 33, la red debe re-
conocer cada una como pertene-
ciente a una forma determinada, sin
importar su posición y su grado de
nitidez. Cada una de ellas se repre-
senta por un vector de nueve ele-
mentos, donde cada componente
es el nivel de gris correspondiente a
cada píxel.
Para esto es útil, por ejemplo,
una red multicapa de 9 entradas,
capa oculta de 2 neuronas y 3 neu-
ronas de salida. Más adelante vere-
mos cómo podemos usar estas téc-
nicas en visión artificial, desarro-
llando un pequeño “Ojo artificial
electrónico” y luego entrenándolo Figura 33
con imágenes “corrompidas”.
Bueno, con esto es suficiente por ahora. Ya algo de control “fuzzy”, tendiente al mando de
tendremos oportunidad de ver más de redes la rotación de un brazo robot, a partir de las se-
En el próximo capítulo comenzaremos con ñales de electromiografía de una persona. J

36 Capítulo 3
C a p í t u lo 4

I ntroduccIón al c ontrol con F uzzy logIc


c ontrol de B razo roBot
por S eñaleS e lectromIográFIcaS
Cuando se desea hacer control con las técnicas convencionales, nos encontramos con la
necesidad de obtener un modelo matemático del proceso a controlar. Además, se necesita
contar con un objetivo en el control, expresado en forma matemática precisa. Si el sistema
a controlar es algo complejo, no lineal y con un comportamiento temporal que varía, la tarea
de obtener el modelo matemático puede ser complicada. Mediante el empleo de técnicas de
lógica difusa se pueden implementar sistemas de control fácilmente, por medio de reglas
provenientes de la experiencia o el sentido común. Empleando estas técnicas es posible
comandar muchos dispositivos, los cuales por su naturaleza complicada sería muy difícil
gobernar de otra manera; el control de “neuroprótesis” es una clara aplicación. La imple-
mentación de un controlador fuzzy puede realizarse de muchas formas, en este capítulo
explicaremos cómo usar una técnica sencilla para la implementación de un brazo robot uti-
lizando técnicas de lógica difusa a señales eléctricas producidas por un músculo durante el
proceso de contracción y relajación (señales electromiográficas).

Capítulo 4 37
Robótica BEaM, Inteligencia artificial y lógica Difusa
In­tro­duc­cIón per­te­ne­ce­o­no­per­te­ne­ce­y­lis­to.­Pe­ro­ex­tra­po­-
le­mos­ es­to­ a­ la­ rea­li­dad­ y­ vea­mos­ que­ no­ es
¿Quién no ha escuchado en esta época ha- tan­sen­ci­llo­en­la­vi­da­co­ti­dia­na.
blar de FUZZY LOGIC o Lógica Difusa? Si­ por­ ejem­plo­ qui­sié­ra­mos­ cla­si­fi­car­ a­ las
Se­gu­ra­men­te­a­dia­rio­ve­mos­y­oí­mos­so­bre per­so­nas­en­al­tas­y­ba­jas,­en­ton­ces­po­dría­mos
la­va­rro­pas­ y­ te­le­vi­so­res­ con­ tec­no­lo­gía­ fuzzy, de­fi­nir­dos­con­jun­tos,­tal­como­se­muestra­en­la
soft­wa­re­ que­ jue­ga­ al­ aje­drez­ con­ téc­ni­cas figura­1.­­
fuzzy,­sa­té­li­tes­con­con­trol­fuzzy,­etc. Aho­ra­su­pon­ga­mos­que­im­po­ne­mos­la­con­-
Nues­tro­pro­pó­si­to­es­des­mi­ti­fi­car­es­ta­téc­ni­- di­ción­ que­ una­ per­so­na­ pa­ra­ ser­ “al­ta”­ tie­ne
ca,­po­nién­do­la­en­tér­mi­nos­muy­sen­ci­llos­al­al­- que­te­ner­1,70­m­de­al­tu­ra.­Así,­si­to­ma­mos­co­-
can­ce­de­cual­quier­afi­cio­na­do. mo­x­la­per­so­na:
Pa­ra­co­men­zar­ten­dre­mos­que­re­pa­sar­al­-
go­muy­co­no­ci­do,­que­se­gu­ra­men­te­to­dos­he­- µC(x) =1 si la persona tiene una estatura
mos­vis­to­al­gu­na­vez,­y­nos­re­fe­ri­mos­a­la­Teo­- igual o mayor a 1,70 m (o sea pertenece al con-
ría­de­Con­jun­tos.­Aun­que­aho­ra­tra­ta­re­mos­con junto C).
un­nue­vo­ti­po­de­con­jun­tos:­los­con­jun­tos­fuzzy µC(x) = 0 (caso contrario).
(di­fu­sos­o­bo­rro­sos).
En­rea­li­dad,­los­con­jun­tos­or­di­na­rios­no­son Co­mo­po­de­mos­apre­ciar,­es­te­mé­to­do­es­un
más­que­un­ca­so­par­ti­cu­lar­de­los­con­jun­tos­di­- po­co­in­jus­to,­por­que­no­es­lo­mis­mo­de­cir­que
fu­sos.­Al­gu­nos­au­to­res­pre­fie­ren­lla­mar­los­sub­- es­ba­ja­una­per­so­na­que­po­see­1,50­m­de­al­tu­-
con­jun­tos­di­fu­sos,­por­ra­zo­nes­teó­ri­cas­vá­li­das, ra,­que­­aque­lla­que­mi­de­1,69­m.­Ade­más,­¿es
pe­ro­ no­so­tros­ di­rec­ta­men­te­ nos­ re­fe­ri­re­mos­ a realmente apreciable la diferencia entre 1,69 m
ellos­co­mo­con­jun­tos,­ya­que­el­ob­je­ti­vo­es­sim­- y 1,70 m?
pli­fi­car­la­teo­ría­pa­ra­fa­ci­li­tar­la­com­pren­sión­y Así­na­ce­la­idea­de­usar­fun­cio­nes­que­in­di­-
el­uso. quen­ per­te­nen­cia­ a­ con­jun­tos,­ cu­yos­ re­sul­ta­-
dos­no­sean­ex­clu­si­va­men­te­unos­o­ce­ros,­si­no
que­ pue­dan­ va­riar­ li­bre­men­te­ en­ el­ in­ter­va­lo
Los con­jun­tos Fuzzy [1,0].
Con­es­te­mé­to­do­po­de­mos­in­di­car­por­ejem­-
Su­pon­ga­mos­que­te­ne­mos­un­con­jun­to­A,­y plo;­si­la­per­so­na­x­mi­de­1,69­m:­
B­es­un­sub­con­jun­to­de­A.­En­teo­ría­con­ven­cio­-
nal­de­con­jun­tos­de­ci­mos­que­B ⊂ A­(B­es­tá­in­- µC(x) = 0,99 (tiene un 99% de pertenencia
clui­do­en­A).­Y­pa­ra­in­di­car­que­un­ele­men­to­x al conjunto de altos).
cual­quie­ra­per­te­ne­ce­al­con­jun­to­A­es­cri­bi­mos:
x ∈ A. y­ade­más:
Aho­ra,­exis­te­otra­for­ma­pa­ra­ex­pre­sar­esa
no­ción­y­con­sis­te­en­el­uso­de­una­fun­ción­de µD(x)­=­0,01­(tie­ne­un­1%­de­per­te­nen­cia­al
per­te­nen­cia.­Es­de­cir,­una­fun­ción­que­me­dian­- con­jun­to­de­ba­jos).
te­ su­ va­lor­ nos­ in­di­que,­ si­ x
per­te­ne­ce­o­no­a­A.­Así,­si­lla­- Figura 1
ma­mos­µA(x)­a­di­cha­fun­ción,
po­de­mos­in­di­car:

µA(x)­=1­­­­­­­­si­x ∈ A
µA(x)­=0­­­­­­­­si­x ∉ A

Aquí­ es­ta­ría­mos­ fren­te­ al


ca­so­en­que­la­cues­tión­es­si

38 Capítulo 4
Control de Brazo Robot por Señales Electromiográficas
Figura 2 • Es fácil de entender conceptualmen-
te. Los conceptos matemáticos detrás
de ésta son muy simples. Lo que la
hace atractiva es la naturalidad con la
que uno puede expresar problemas
de cierta complejidad.
• Es flexible. Una vez diseñado un al-
goritmo fuzzy es fácil cambiar las re-
glas de comportamiento.
• Los datos pueden ser imprecisos y
sin embargo, el sistema funcionar
Co­mo­ ve­mos,­ for­mar­ par­te­ de­ un­ con­jun­to igualmente.
no­ex­clu­ye­la­per­te­nen­cia­a­otro,­en­es­ta­teo­ría. • Se pueden modelizar sistemas no-lineales
de complejidad arbitraria.
¿Para qué nos sirve esto? • El sistema fuzzy puede ser construido en
Bue­no,­co­mo­to­dos­sa­be­mos,­en­la­vi­da­nor­- base a la experiencia de expertos. Esto es una
mal­men­te­nues­tra­apre­cia­ción­de­la­rea­li­dad­no gran ventaja si lo comparamos con las redes
es­un­sim­ple­Sí­/No.­Por­ejem­plo,­la­ma­dre­que neuronales donde la red entrenada es como
es­tá­a­pun­to­de­ba­ñar­a­su­be­bé,­tie­ne­la­ti­na una caja negra, en problemas complejos.
pre­pa­ra­da,­ in­tro­du­ce­ la­ ma­no­ y­ di­ce­ que­ el • Puede combinarse con técnicas de control
agua­“es­tá­ca­lien­te”,­pe­ro­¿cuánto es caliente?, convencionales.
¿exactamente 60 ºC?, ¿o más? • Se basa en el lenguaje natural. Como vere-
O­ cuan­do­ al­guien­ afir­ma­ que­ un­ ob­je­to­ es mos en el diseño de los controladores, es sen-
ama­ri­llo, ¿es porque la longitud de onda que re- cillo expresar las instrucciones como reglas
fleja es exactamente de 555 nm? fuzzy.
La­ló­gi­ca­di­fu­sa­tie­ne­mu­cho­que­ver­con­la
pre­ci­sión.­ ¿Qué tan importante es ser preciso En­ton­ces­la­Ló­gi­ca­Fuzzy­es­una­for­ma­pa­ra
en lo que uno dice? con­se­guir­los­re­sul­ta­dos­de­sea­dos.­
Sur­ge­la­ne­ce­si­dad­de­ex­pre­sar­es­tas­ideas Vol­vien­do­ al­ ejem­plo,­ po­de­mos­ ex­pre­sar­ el
en­ el­ cam­po­ de­ la­ téc­ni­ca­ de­ al­gu­na­ ma­ne­ra con­jun­to­de­per­so­nas­ba­jas­co­mo­se­establece
sen­ci­lla­ y­ fá­cil­ de­ ma­ni­pu­lar.­ La­ Ló­gi­ca­ Di­fu­sa en­la­figura­2.­Aquí­se­expresa­ca­da­ele­men­to
se­pro­po­ne­co­mo­una­he­rra­mien­ta­pa­ra­sal­var con­su­fun­ción­de­per­te­nen­cia­aso­cia­da,­se­gún
es­tas­am­bi­güe­da­des.­Ob­via­men­te­no­es­la­úni­- el­ejem­plo:
ca­ma­ne­ra,­pe­ro­sí­la­más­sim­ple.
Así­ po­de­mos­ men­cio­nar­ al­gu­nas­ de­ sus Con­jun­to­de­Per­so­nas­al­tas­=­
ven­ta­jas: =­{1|(0,001)­;­1,50|(0,01)­;­1,60|(0,85)­;­1,64|(0,99)­;­1,80|(1)­;­1,90|(1)}­

Figura 3 Al­con­cep­to­ma­te­má­ti­co:­

C = {x1| (µC(x1)); x2|(µC(x2)); ...; xn|(µC(xn))}

Se­le­lla­ma­con­jun­to­fuzzy.

Exis­ten­va­rias­ope­ra­cio­nes­sen­ci­llas­y
muy­úti­les­que­se­pue­den­rea­li­zar­con
los­ con­jun­tos­ fuzzy.­ Ana­li­cé­mos­las
con­ mu­cha­ aten­ción,­ ya­ que­ son­ la
ba­se­pa­ra­el­di­se­ño­pos­te­rior.

Capítulo 4 39
Robótica BEaM, Inteligencia artificial y lógica Difusa
Los­con­jun­tos­fuzzy­pue­den­ser­re­pre­sen­ta­- Aho­ra­ al­ ex­pre­sar­ las­ fun­cio­nes­ de­ per­te­-
dos­ en­ for­ma­ grá­fi­ca­ muy­ fá­cil­men­te­ co­mo nen­cia­grá­fi­ca­men­te,­las­ope­ra­cio­nes­que­de­fi­-
queda­representado­en­la­fi­gu­ra­3.­O­sea,­pa­ra ni­mos­ an­te­rior­men­te­ tam­bién­ pue­den­ ex­pre­-
el­di­se­ño­de­con­tro­la­do­res­fuzzy,­los­con­jun­tos sar­se­en­for­ma­grá­fi­ca­(fi­gu­ra­7).
se­ re­pre­sen­tan­ con­ fi­gu­ras­ con­ve­xas­ (trián­gu­-
los­y­trián­gu­los­trun­ca­dos­son­una­ma­ne­ra­sen­-
ci­lla)­y­­nor­ma­les­(en­las­que­al­me­nos­uno­de
sus­ele­men­tos­ten­ga­va­lor­de­per­te­nen­cia­1,­y
nin­gu­no­ más­ que­ 1).­Así,­ por­ ejem­plo,­ su­pon­-
ga­mos­ que­ te­ne­mos­ una­ per­so­na­ que­ mi­de
1,60­ m;­ po­de­mos­ me­dian­te­ el­ grá­fi­co­ sa­ber
cuan­al­ta­y­cuan­ba­ja­es­(observe­la­fi­gu­ra­4).

Figura 4
Figura 7

La­ forma­ analítica­ de­ expresar­ un­ conjunto


fuzzy­ se­ muestra­ en­ la­ figura­ 8,­ donde­ se
expresa­la­correspondencia­entre­un­conjunto­y
los­subconjuntos­asociados.

Tam­bién,­ las­ fun­cio­nes­ de­ per­te­nen­cia­ po­-


drían­ser­co­mo­las­si­guien­tes­(fi­gu­ra­5).

Figura 5

Figura 8

dI­se­ño de un con­troL Fuzzy

Pe­ro­por­sim­pli­ci­dad,­a­la­ho­ra­de­im­ple­men­- ¿Cómo empleamos estos conocimientos?


tar,­es­co­ge­mos­fi­gu­ras­co­mo­és­tas­(fi­gu­ra­6). To­do­ pa­re­ce­ com­pli­ca­do.­ Bue­no,­ aho­ra­ ve­-
re­mos­que­to­da­es­ta­teo­ría­es­muy­útil.
Figura 6 En­ge­ne­ral,­en­to­do­pro­ce­so­de­con­trol­te­ne­-
mos­(fi­gu­ra­9).

Figura 9

40 Capítulo 4
Control de Brazo Robot por Señales Electromiográficas
Exis­te­un­con­jun­to­de­sen­so­res­que­leen­los como­la­parada­de­ésta­y­la­puesta­en­marcha.
da­tos­de­la­por­ción­del­mun­do­real­so­bre­la­cual También­es­posible­el­manejo­de­sistemas­soft-
que­re­mos­ac­tuar,­le­en­vían­es­ta­in­for­ma­ción­a ware­que­reproduzcan­palabras­de­un­menú­en
un­con­tro­la­dor,­que­po­see­una­re­fe­ren­cia­acer­- la­pantalla­de­un­ordenador­conectado­a­un­sis-
ca­ de­ que­ com­por­ta­mien­to­ se­ de­sea­ en­ es­te tema­ de­ adquisición­ de­ señales­ de­ este­ tipo.
pro­ce­so.­ El­ con­tro­la­dor­ in­flu­ye­ so­bre­ el­ pro­ce­- Para­ esto­ sólo­ hay­ que­ asociar­ determinadas
so,­ba­sán­do­se­en­esa­re­fe­ren­cia­y­a­tra­vés­de señales­EMG­a­los­movimientos­de­un­puntero
los­ac­tua­do­res­pro­cu­ra­lo­grar­el­com­por­ta­mien­- en­la­pantalla­del­ordenador,­mediante­el­que­se
to­es­pe­ra­do. escoge­ la­ palabra­ adecuada­ para­ ser­ repro-
Lo­que­ha­re­mos­es­cons­truir­un­con­tro­la­dor, ducida.­ Otras­ aplicaciones­ son­ la­ determi-
pe­ro­ba­sán­do­nos­en­las­téc­ni­cas­que­nos­pro­- nación­del­tiempo­de­activación­del­músculo,­la
por­cio­na­rá­la­ló­gi­ca­fuzzy.­Su­re­fe­ren­cia­se­rán estimación­de­la­fuerza­producida­por­una­con-
las­re­glas­fuzzy.­ tracción­ muscular­ y­ la­ obtención­ de­ un­ índice
Pa­ra­ es­tu­diar­ to­dos­ los­ pa­sos­ en­ el­ di­se­ño de­ la­ fatiga­ muscular.­ Estas­ últimas­ aplica-
de­es­te­ti­po­de­con­tro­la­do­res,­ve­re­mos­un­ca­so ciones­ están­ muy­ indicadas­ en­ medicina
prác­ti­co­ aplicado­ a­ señales­ eléctricas­ produci- deportiva.­
das­por­el­cuerpo­humano. Desgraciadamente­ también­ hay­ serios
inconvenientes,­ como­ la­ fatiga­ muscular.­ La
respuesta­ de­ un­ músculo­ en­ estado­ de­ fatiga
Las señaLes MIoeLéctrIcas difiere­ de­ la­ respuesta­ del­ mismo­ músculo­ en
ausencia­de­este­estado;­esto­debe­ser­tenido
Las­ señales­ electromiográficas­ (EMG)­ son en­cuenta­durante­la­fase­de­utilización­de­este
señales­ eléctricas­ producidas­ por­ un­ músculo sistema­ de­ control­ EMG.­ Otro­ inconveniente,
durante­el­proceso­de­contracción­y­relajación. aunque­de­menor­trascendencia­es­el­hecho­de
Esta­ característica­ muscular­ se­ pretende que­se­requiere­un­periodo­de­aprendizaje­por
aprovechar­en­el­control­por­computadora­para parte­ del­ usuario.­ Durante­ este­ tiempo­ el
conseguir­ crear­ interfaces­ de­ comunicación paciente­debe­aprender­a­generar­la­respuesta
entre­el­usuario­y­la­máquina­alternativos­a­los adecuada­para­el­manejo­de­un­sistema­de­este
ya­ existentes,­ como­ son­ el­ teclado­ y­ el­ ratón. tipo.­
Un­ interfaz­ de­ este­ tipo­ permitiría­ a­ cualquier Una­ cuestión­ importante­ es­ conocer­ el
usuario­ controlar­ sistemas­ informáticos­ y/o número­ de­ señales­ distintas­ que­ puede­ pro-
electrónicos­ mediante­ la­ contracción­ de­ deter- ducir­un­músculo­y­que­sean­utilizables­por­un
minados­músculos.­ sistema­ de­ control­ EMG.­ Actualmente­ se­ han
Pero­ más­ que­ para­ usuarios­ normales,­ un construido­ sistemas­ experimentales­ que­ han
sistema­ de­ este­ tipo­ es­ especialmente­ intere- conseguido­distinguir­entre­seis­señales­distin-
sante­para­individuos­que­padezcan­algún­tipo tas­en­músculos­concretos.­
de­ parálisis­ que­ dificulte­ sus­ actividades­ y­ su
interacción­ con­ el­ mundo­ que­ le­ rodea,­ ofre- ¿Cómo se pueden utilizar estas señales en
ciendo­ unas­ posibilidades­ hasta­ ahora­ inexis- beneficio de estas personas?
tentes­y­mejorando­su­calidad­de­vida.­ Podemos­ hacerlo­ con­ ayuda­ de­ orde-
Una­de­las­aplicaciones­que­se­puede­llevar nadores­ y­ sistemas­ electrónicos­ de­ control.
a­cabo­consiste­en­usar­estas­señales­para­que Utilizando­estas­tecnologías­es­posible­capturar
personas­ con­ un­ alto­ grado­ de­ discapacidad las­ señales­ electromiográficas­ producidas­ por
física­ puedan­ desplazarse­ en­ silla­ de­ ruedas la­actividad­de­un­músculo­sano,­aplicarles­una
controlados­ por­ ellos­ mismos.­ Esto­ es­ posible serie­ de­ transformaciones­ para­ obtener­ una
siempre­que­el­paciente­disponga­al­menos­de señal­ más­ adecuada­ para­ su­ almacenamiento
un­músculo­sano,­que­será­utilizado­para­con- en­ ordenadores,­ y­ comparar­ las­ señales­ pro-
trolar­ la­ dirección­ de­ avance­ de­ la­ silla,­ así ducidas­por­el­usuario­con­otras­anteriormente

Capítulo 4 41
Robótica BEaM, Inteligencia artificial y lógica Difusa
tratadas­ y­ almacenadas­ en­ un usados­ en­ el­ diseño­ deben­ ser
ordenador,­ para­ que­ operen ciudadosamente­ seleccionados
como­comandos­sobre­sistemas para­minimizar­que­el­ruido­pre-
de­ control­ que­ realicen­ las­ fun- sente­en­todos­los­circuitos­elec-
ciones­ más­ importantes­ que­ el trónicos­ afecte­ a­ la­ señal­ de
usuario­ necesite,­ auxiliando­ a entrada.­ 
Una­ vez­ realizada­ la
éste­en­su­labor­diaria.­ amplificación,­ tenemos­ una
Pero­un­sistema­de­este­tipo, señal­equivalente­a­la­producida
no­ se­ reduce­ a­ colocar­ unos por­la­contracción­muscular­pero
electrodos­ en­ un­ individuo­ y de­ mayor­ amplitud.­ Es­ nece-
conectarlos­a­una­computadora, sario­ ahora­ eliminar­ algunas
sino­ que­ se­ necesitan­ circuitos componentes­ conocidas­ de
electrónicos­ muy­ sensibles­ y ruido­ en­ esta­ señal­ ya­ amplifi-
sofisticados­ para­ recoger­ este cada­ con­ objeto­ de­ eliminar
tipo­de­señales,­así­como­técni- información­ que­ puede­ estar
cas­ de­ tratamiento­ de­ señales ensuciando­la­original.­Para­ello
complejas.­ En­ la­ figura­ 10­ se se­la­hace­pasar­por­una­etapa
pueden­ ver­ las­ partes­ princi- de­filtrado,­en­concreto­se­elimi-
pales­de­las­que­se­compone­un Figura 10 nan­ las­ componentes­ de­ fre-
sistema­ de­ adquisición­ de cuencia­ de­ 50Hz­ 0­ 60Hz­ (red
señales­EMG. local).­Las­responsables­de­este­ruido­de­50Hz
En­el­músculo­elegido­para­ello,­se­colocan o­ 60Hz­ son­ las­ líneas­ de­ tensión­ domésticas
unos­ electrodos­ de­ superficie­ para­ capturar presentes­en­todas­las­instalaciones.­Hay­que
estas­señales.­Estos­electrodos­son­fundamen- tener­ en­ cuenta­ que­ existen­ otras­ fuentes­ de
tales­ para­ una­ buena­ captura,­ debiendo­ tener ruido­que­afectan­a­la­señal­y­que­no­es­posi-
buena­ superficie­ de­ contacto­ y­ gran­ adheren- ble­su­eliminación­total.­
Llegados­a­este­punto
cia.­Debido­a­que­la­piel­ofrece­una­resistencia se­ha­obtenido­una­señal­en­unos­márgenes­de
elevada,­se­hace­necesario­la­aplicación­de­un tensión­adecuados­y­se­ha­eliminado­ruido­en
gel­que­disminuya­dicha­resistencia­en­la­zona la­medida­de­lo­posible,­pero­esta­señal­no­está
aplicada,­contribuyendo­a­mejorar­la­ganancia en­ la­ forma­ adecuada­ para­ que­ los­ orde-
de­la­señal.­Estos­electrodos­se­aplican­direc- nadores­ actuales­ (digitales)­ puedan­ trabajar
tamente­a­la­entrada­de­un­amplificador­de­alta con­ella.­Por­tanto­se­hace­necesario­una­etapa
ganancia.­Esto­es­así­debido­a­que­las­señales de­ conversión.­ La­ señal­ original­ es­ de­ natu-
EMG­tienen­una­tensión­del­orden­de­milivolt­lo raleza­analógica,­es­decir,­entre­dos­instantes
que­la­hace­inapropiada­para­trabajar­con­ella, de­tiempo­cualesquiera­de­ésta­existen­infinitos
debiéndose­ por­ esta­ razón­ amplificarla­ hasta valores­ de­ la­ señal.­ Al­ no­ poder­ trabajar­ los
valores­en­los­que­los­circuitos­puedan­trabajar ordenadores­ con­ señales­ analógicas­ hay­ que
sin­ problemas.­ La­ etapa­ de­ amplificación­ es convertirlas­ a­ señales­ digitales­ o­ discretas
una­ de­ las­ etapas­ más­ críticas­ en­ todo­ el muestreando­ la­ señal­ analógica­ con­ una­ fre-
tratamiento­ a­ que­ se­ someten­ estas­ señales. cuencia­ adecuada­ para­ no­ perder­ ninguna
Los­ amplificadores­ deben­ diseñarse­ con información­relevante.­El­teorema­del­muestreo
extremo­ cuidado­ para­ evitar­ influir­ en­ la­ señal afirma­que­para­muestrear­una­señal­sin­perder
original­ y­ deben­ realizar­ una­ amplificación­ lo información­y­por­tanto­poder­reproducirla­per-
más­ fiel­ posible­ de­ la­ señal­ de­ entrada.­ En­ la fectamente­ partiendo­ de­ la­ señal­ discreta,­ se
práctica,­esto­es­complicado­debido­a­que­las debe­muestrear­a­una­frecuencia­de­al­menos
señales­EMG,­al­ser­tan­débiles,­son­fácilmente el­ doble­ de­ la­ frecuencia­ fundamental­ de­ la
sobremoduladas­por­otras­señales­que­aumen- señal­analógica.­Las­señales­EMG­tienen­una
tan­ el­ ruido­ de­ la­ señal­ original.­ Los­ circuitos frecuencia­ que­ oscila­ entre­ 50Hz­ y­ 150Hz,­ de

42 Capítulo 4
Control de Brazo Robot por Señales Electromiográficas
lizan­ en­ casos­ específicos­ cuando­ la­ señal­ es
Figura 11
de­ difícil­ tratamiento.­ Es­ un­ método­ computa-
cionalmente­ eficiente­ puesto­ que­ existe­ un
algoritmo,­ llamado­ FFT­ (Fast­ Fourier
Transform)­ que­ reduce­ el­ número­ de­ opera-
ciones­ necesarias­ para­ realizar­ la­ conversión.

De­ las­ técnicas­ matemáticas­ para­ el­ análisis
univariante­de­series­temporales­se­utilizan­los
procesos­autoregresivos­AR,­que­se­basan­en
estimar­ el­ enésimo­ valor­ de­ la­ señal­ usando
una­combinación­lineal­de­un­número,­determi-
nado­ a­ priori,­ de­ valores­ anteriores.­ Existen
otros­ procesos­ como­ MA­ (Moving­ Average)­ o
procesos­ de­ media­ móvil,­ y­ combinación­ de
aquí­se­deduce­que­la­frecuencia­de­muestreo ambos­ en­ ARMA.­ 
La­ última­ técnica­ men-
adecuada­no­debe­ser­menor­de­300Hz,­figura cionada­ consiste­ en­ utilizar­ una­ red­ neuronal
11.­Quizás­se­pueda­pensar­que­una­frecuencia para­ determinar­ el­ grado­ de­ igualdad­ entre
de­ muestreo­ mayor,­ por­ ejemplo­ 600Hz,­ sea señales.­ Estas­ técnicas­ son­ muy­ recientes­ y
mejor,­pero­con­300Hz­se­obtiene­toda­la­infor- parecen­adaptarse­bien­a­este­tipo­de­señales
mación­fundamental­de­la­señal­y­se­minimiza en­ las­ que­ hay­ una­ componente­ fuerte­ de
el­ número­ de­ datos­ necesarios­ para­ manejar aleatoriedad.­ Presentan­ como­ inconveniente
las­señales­EMG­en­ordenadores.­ una­carga­computacional­elevada.­
Estos­méto-
A­ una­ frecuencia­ de­ 300Hz­ y­ muestreando dos­ son­ implementados­ mediante­ algoritmos,
durante­ un­ segundo­ se­ representa­ una­ señal programados­ lo­ más­ eficientemente­ posible,
EMG­ como­ un­ vector­ de­ 300­ elementos,­ un usando­ para­ ello­ estructuras­ de­ datos­ ade-
tamaño­ aceptable­ que­ permite­ un­ tiempo­ de cuadas­ y­ haciendo­ especial­ énfasis­ en­ la
cómputo­muy­bueno­en­un­ordenador­actual­de velocidad­ de­ ejecución­ de­ estos­ métodos,
prestaciones­medias.­
 puesto­que­un­sistema­de­este­tipo­debe­tener
Ya­ tenemos­ la­ señal­ producida­ por­ la­ con- características­de­tiempo­real­y­por­tanto­debe
tracción­ muscular­ de­ una­ persona­ en­ la­ com- acortar­el­tiempo­de­respuesta.­Una­vez­que­se
putadora­ de­ forma­ manejable­ y­ a­ la­ que­ se­ le reconoce­una­señal­procedente­del­músculo­del
pueden­aplicar­determinadas­operaciones.­Nos usuario,­ se­ realizan­ las­ acciones­ asociadas­ a
centramos­ahora­en­la­descripción­de­las­prin- esta­ señal.­ Estas­ acciones­ pueden­ ser­ muy
cipales­ técnicas­ matemáticas­ para­ la­ manipu- variadas,­desde­mover­el­puntero­del­ratón­en
lación­de­estas­señales.­Debido­a­la­naturaleza la­pantalla­del­ordenador,­hasta­activar­un­sis-
estocástica­de­estas­señales,­hay­que­recurrir­a tema­ motor­ que­ realice­ una­ acción­ mecánica.
técnicas­ específicas;­ en­ concreto,­ el­ que Las­ acciones­ a­ realizar­ por­ el­ sistema­ vienen
suscribe­está­utilizando­tres­métodos:­el­análi- determinadas­ por­ las­ necesidades­ de­ cada
sis­ espectral,­ ecuaciones­ autoregresivas­ y paciente,­ siendo­ prácticamente­ ilimitadas.­ Un
redes­neuronales.­
El­análisis­espectral­o­análi- sistema­ de­ este­ tipo­ es­ un­ claro­ ejemplo­ de
sis­de­Fourier­consiste­en­pasar­una­señal­del cooperación­ entre­ dos­ áreas­ de­ conocimiento
dominio­del­tiempo­al­dominio­de­la­frecuencia. que,­ aunque­ se­ encuentra­ aún­ en­ fase­ de
Obteniéndose­de­esta­forma­información­sobre desarrollo­y­hay­pocos­trabajos­en­este­campo,
las­componentes­en­frecuencia­de­la­señal­en esperemos­ que­ sea­ un­ campo­ en­ crecimiento
estudio.­Sólo­es­necesario­añadir­un­criterio­de constante,­pues­es­de­gran­potencia­y­utilidad,
distancia­para­determinar­la­igualdad­entre­dos sobre­todo­para­personas­con­parálisis,­lo­que
señales.­ Normalmente­ se­ usa­ la­ distancia conduciría­ a­ una­ mayor­ integración­ de­ estas
Euclídea,­pero­existen­otras­muchas­que­se­uti- personas­en­las­actividades­sociales.

Capítulo 4 43
Robótica BEaM, Inteligencia artificial y lógica Difusa

Práctica:
Control de Brazo Robot
Mediante Señal EMG
In­tro­duc­cIón aL Pro­bLe­Ma Pa­ra­el­con­trol­ de­es­tas­pró­te­sis­se­ cuen­ta
con­las­se­ña­les­ge­ne­ra­das­en­los­mús­cu­los­por
En­ la­ ac­tua­li­dad­ exis­ten­ mu­chos­ in­di­vi­duos las­ins­truc­cio­nes­que­el­ce­re­bro­les­en­vía­pa­ra
con­ dis­ca­pa­ci­da­des­ sen­so­ri-mo­to­ras.­ Con­ el mo­ver­los.­Es­tas­se­lla­man­se­ña­les­elec­tro­mio­-
ob­je­ti­vo­de­ayu­dar­a­la­me­jo­ra­de­la­ca­li­dad­de grá­fi­cas­(EMG).­En­nues­tro­ca­so,­pa­ra­sim­pli­fi­-
vi­da­de­es­tas­per­so­nas­se­han­de­sa­rro­lla­do­nu­- car,­su­pon­dre­mos­que­uti­li­za­re­mos­es­tas­se­ña­-
me­ro­sos­ sis­te­mas­ prác­ti­cos.­ Es­tos­ sis­te­mas les­ ob­te­ni­das­ de­ una­ per­so­na­ sa­na,­ es­ de­cir,
es­tán­ orien­ta­dos,­ en­ al­gu­nos­ ca­sos­ a­ fa­ci­li­tar de­mús­cu­los­nor­ma­les­e­in­tac­tos.
sus­fun­cio­nes­sen­so­ri-mo­to­ras,­ta­les­co­mo­ex­- Enun­cia­re­mos­el­pro­ble­ma­en­ton­ces:
ten­der­la­ma­no,­to­mar­y­sos­te­ner­al­go,­pa­rar­se, Su­pon­ga­mos­ que­ de­sea­mos­ con­tro­lar­ el
ca­mi­nar,­ etc.­ y­ en­ otros­ ca­sos­ di­rec­ta­men­te­ a mo­vi­mien­to­de­ro­ta­ción­de­un­bra­zo­uti­li­zan­do
reem­pla­zar­los­me­dios­ori­gi­na­les­por­los­cua­les un­con­tro­la­dor­di­fu­so.
se­lo­gra­ban­es­tas­ta­reas. El­bra­zo­ro­bot­imi­ta­rá­el­mo­vi­mien­to­de­la­ar­-
Un­ca­so­muy­co­mún­es­el­reem­pla­zo­de­las ti­cu­la­ción­del­co­do­de­la­per­so­na.
fun­cio­nes­mí­ni­mas­de­un­miem­bro­su­pe­rior,­en Pa­ra­con­tro­lar­es­te­mo­vi­mien­to­sen­sa­re­mos
una­per­so­na­am­pu­ta­da,­me­dian­te­una­pró­te­sis las­se­ña­les­de­elec­tro­mio­gra­fía­co­rres­pon­dien­-
elec­tró­ni­ca­y­me­cá­ni­ca. tes­a­los­mús­cu­los­bí­ceps­y­trí­ceps.­Y­aquí­ca­-
Aun­que­qui­zás­to­da­vía­nos­pa­rez­ca­un­pro­- be­una­acla­ra­ción.­Co­mo­no­es­el­pro­pó­si­to­de
duc­to­de­la­cien­cia­fic­ción,­hoy­en­día­me­dian­- es­te­ar­tí­cu­lo­ex­pli­car­los­re­que­ri­mien­tos­de­un
te­ las­ téc­ni­cas­ de­ pro­ce­sa­mien­to­ de­ se­ña­les, dis­po­si­ti­vo­ elec­tró­ni­co­ ca­paz­ de­ ad­qui­rir­ elec­-
es­ fac­ti­ble­ el­ di­se­ño­ de­ “pró­te­sis­ in­te­li­gen­tes”. tro­mio­gra­ma,­ sim­ple­men­te­ des­cri­bi­re­mos­ bre­-
Es­tas­ se­ co­nec­tan­ me­dian­te­ elec­tro­dos­ al­ pa­- ve­men­te­en­qué­con­sis­te­di­cho­apa­ra­to.
cien­te­y­le­per­mi­ten,­con­un­en­tre­na­mien­to­ade­- La­se­ñal­de­elec­tro­mio­gra­ma­es­tá­cons­ti­tui­-
cua­do,­con­tro­lar­di­cha­pró­te­sis. da­­por­la­su­ma­to­ria­es­pa­cio­tem­po­ral­de­tre­nes
Un­ejem­plo­con­ven­cio­nal­de­es­tos­dis­po­si­ti­- de­po­ten­cia­les­de­ac­ción­de­uni­da­des­mo­to­ras.
vos­ es­ el­ “Utah­ARM2”,­ una­ pró­te­sis­ eléc­tri­ca En­ pa­la­bras­ sen­ci­llas­ los­ ner­vios,­ al­ en­viar­le
di­se­ña­da­ por­ “Mo­tion­ Con­trol”­ (Fi­gu­ras­ 12­ y se­ña­les­eléc­tri­cas­a­los­mús­cu­los­es­que­lé­ti­cos
13). pa­ra­ que­ se­ con­trai­gan,­ ge­ne­ran­ po­ten­cia­les

Figura 12 Figura 13

44 Capítulo 4
Control de Brazo Robot por Señales Electromiográficas
Figura 14 eléc­tri­cos­que­pue­den­ser­ad­qui­ri­dos­en­la­su­-
per­fi­cie­del­mús­cu­lo­es­tu­dia­do,­me­dian­te­elec­-
tro­dos­de­su­per­fi­cie­(fi­gu­ra­14).
Es­tos­elec­tro­dos­re­gis­tran­esa­se­ñal­de­muy
pe­que­ña­am­pli­tud­y­la­in­gre­san­a­un­sis­te­ma­de
ad­qui­si­ción,­ el­ cual­ la­ am­pli­fi­ca­ con­si­de­ra­ble­-
men­te,­la­fil­tra­y­la­en­tre­ga­por­ejem­plo­con­un
ran­go­de­ex­cur­sión­de­0-5­vol­tios­(ver­fi­gu­ra15).
Co­mo­di­ji­mos­an­te­rior­men­te,­por­el­mo­men­-
to­su­pon­dre­mos­que­nues­tro­in­te­rés­es­tá­en­el
con­tro­la­dor­del­bra­zo­ro­bó­ti­co­y­por­lo­tan­to­no
nos­ preo­cu­pa­re­mos­ por­ el­ pro­ce­sa­mien­to­ que
re­ci­bi­rá­es­ta­se­ñal,­pa­ra­­lle­gar­a­ser­una­se­ñal
eléc­tri­ca­de­la­am­pli­tud­con­si­de­ra­da.
Figura 15 De­ ma­ne­ra­ que­ nues­tro­ con­tro­la­dor
es­ta­rá­ com­pues­to­ por­ dos­ ca­na­les
de­ ad­qui­si­ción­ co­mo­ el­ de­ la­ fi­gu­ra
15­(ver­fi­gu­ra­16).
Así,­ el­ con­tro­la­dor­ re­ci­be­ la­ se­ñal
pro­ve­nien­te­de­los­mús­cu­los­trí­ceps
y­bí­ceps.­
Aho­ra­vea­mos­en­ba­se­a­es­ta­fi­gu­ra
co­mo­de­be­rá­com­por­tar­se­el­con­tro­-
la­dor:
Si­la­con­trac­ción­del­bí­ceps­es­su­pe­-
rior­ a­ la­ que­ pre­sen­ta­ el­ trí­ceps,
nues­tro­ bra­zo­ ro­bó­ti­co­ de­be­rá­ mo­-
ver­se­en­sen­ti­do­an­ti­ho­ra­rio.
Su­pon­dre­mos­ que­ nues­tro­ sis­te­ma
de­acon­di­cio­na­mien­to­en­tre­ga­la­se­-
ñal­ en­ un­ vol­ta­je­ de­ 0-5V­ y­ ­ fil­tra­da
co­mo­ mues­tra­ la­ fi­gu­ra­ 17.­ Pa­ra­ si­-
mu­lar­el­com­por­ta­mien­to­de­un­mús­-
cu­lo,­la­se­ñal­pro­ce­sa­da­va­ría­en­un
ran­go­de­0V­a­5V­y­de­be­con­si­de­rar­-
se­de­“po­ca­im­por­tan­cia”­si­es­me­nor
a­1V,­“pe­que­ña”­si­se­en­cuen­tra­cer­-
ca­ de­ los­ 2V,­ “me­dia”­ cer­ca­na­ a­ los
3V­y­“al­ta”­si­es­ma­yor­a­los­4V.

Figura 16
dI­se­ño deL sIs­te­Ma
de con­troL Fuzzy

Pa­ra­ la­ so­lu­ción­ de­ es­te­ pro­ble­ma,


im­ple­men­ta­re­mos­ en­ un­ mi­cro­con­-
tro­la­dor­ Pi­ca­xe,­ un­ con­tro­la­dor
Figura 17 fuzzy.

Capítulo 4 45
Robótica BEaM, Inteligencia artificial y lógica Difusa
Figura 18 En­ton­ces,­ en­ el­ ejem­plo­ di­vi­di­mos­ el
ran­go­de­ca­da­va­ria­ble­(las­dos­se­ña­-
les­de­EMG)­en­cua­tro­con­jun­tos­di­fu­-
sos,­ tal­ como­ muestra­ la­ figura­ 19,­ a
los­que­lla­ma­re­mos:

PI: po­ca­im­por­tan­cia,­
P: pe­que­ña­im­por­tan­cia,­
M: me­dia­im­por­tan­cia,­
El­es­que­ma­tí­pi­co­de­un­sis­te­ma­de­con­trol a: al­ta­im­por­tan­cia.­
fuzzy­es­el­que­ve­mos­en­la­fi­gu­ra­18.
Co­mo­ ob­ser­va­mos­ en­ el­ es­que­ma,­ ini­cial­- Los­ po­si­bles­ mo­vi­mien­tos­ del­ mo­tor,­ tam­-
men­te­las­va­ria­bles­de­en­tra­da­rea­les­se­con­- bién­ ten­drán­ sus­ fun­cio­nes­ de­ per­te­nen­cia­ y
vier­ten­ en­ va­ria­bles­ lin­güís­ti­cas­ me­dian­te­ un se­rán­(figura­20):­
pro­ce­so­ de­ fuz­zi­fi­ca­ción.­ Usan­do­ esas­ va­ria­-
bles­se­eva­lúa­un­con­jun­to­de­re­glas­de­con­trol, Ga: gi­ro­an­ti­ho­ra­rio,­
las­que­da­rán­co­mo­re­sul­ta­do­una­se­rie­de­va­- GH: gi­ro­ho­ra­rio,­
lo­res­ lin­güís­ti­cos­ a­ su­ sa­li­da.­ Por­ úl­ti­mo,­ se Q: quie­to.
des­fuz­zi­fi­can­es­tas­va­ria­bles­ob­te­nién­do­se­los
va­lo­res­rea­les­de­sa­li­da.­ Así,­tan­to­el­va­lor­de­la­se­ñal­del­bí­ceps,­co­-
mo­la­del­trí­ceps­to­ma­das­a­in­ter­va­los­re­gu­la­-
1)­Fuz­zi­fi­ca­ción: Me­dian­te­es­te­pro­ce­so­se res­ de­ tiem­po,­ le­ asig­na­re­mos­ su­ per­te­nen­cia
cal­cu­la­el­gra­do­de­per­te­nen­cia­de­la­en­tra­da­a al­con­jun­to­que­co­rres­pon­da.
uno­o­va­rios­con­jun­tos­fuzzy,­di­ga­mos­el­gru­po
de­po­si­bles­con­jun­tos­a­los­que­pue­de­per­te­ne­- 2)­ eva­lua­ción­ de­ las­ re­glas­ de­ con­trol
cer­ la­ va­ria­ble­ de­ en­tra­da.­ Las­ fun­cio­nes­ de (tam­bién­lla­ma­do­pro­ce­so­de­in­fe­ren­cia):
per­te­nen­cia­se­de­fi­nen­a­par­tir­de­los­da­tos­y­el Con­ el­ ob­je­to­ de­ de­ter­mi­nar­ có­mo­ se­ va­ a
sen­ti­do­ co­mún.­ Las­ mis­mas­ se­ re­pre­sen­ta­rán com­por­tar­ el­ sis­te­ma,­ se­ es­ta­ble­ce­ una­ se­rie
grá­fi­ca­men­te­de­la­for­ma­vis­ta­an­te­rior­men­te.­ de­re­glas­de­la­for­ma­IF­(...)­tHen­(...) que­in­-
di­can­ la­ ac­ción­ a­ rea­li­zar­se­ se­gún­ a­ qué­ con­-
Figura 19 jun­to­per­te­ne­ce­la­en­tra­da.­
Eva­luar­las­re­glas­sig­ni­fi­ca­de­ter­mi­nar­cuá­-
les­de­ellas­se­ac­ti­va­rán­fren­te­a­un­sub­con­jun­-
to­ de­ va­lo­res­ de­ per­te­nen­cia­ a­ los­ con­jun­tos
fuzzy­del­do­mi­nio­de­en­tra­da.­Una­for­ma­prác­-
ti­ca­ de­ ex­pre­sar­ es­tas­ re­glas­ de­ una­ ma­ne­ra
com­pac­ta,­ es­ me­dian­te­ la­ ma­triz­ de­ me­mo­ria
aso­cia­ti­va­di­fu­sa­(FAM­de­sus­si­glas­en­in­glés).­

Figura 20

46 Capítulo 4
Control de Brazo Robot por Señales Electromiográficas
área­ba­jo­la­cur­va.­Hay­por­lo­me­nos,
cin­co­mé­to­dos­pa­ra­cons­truir­la­sa­li­da
a­ par­tir­ de­ és­te,­ usa­re­mos­ uno­ de­ los
más­sen­ci­llos:

Don­de:
tabla 1 µi:­gra­do­de­per­te­nen­cia­al­con­jun­to­i-
ési­mo.
Ba­sán­do­nos­ en­ el­ enun­cia­do­ del­ ejem­plo CEi:­cen­troi­de­del­con­jun­to­i-ési­mo.
da­do,­po­de­mos­ob­te­ner­las­re­glas­que­de­ter­mi­- En­nues­tro­ejem­plo­se­rá:
na­rán­el­com­por­ta­mien­to­del­sis­te­ma.­Es­tas­se­-
rán­las­que­ve­mos­en­la­ta­bla­1.
De­es­ta­ta­bla,­por­ejem­plo,­la­re­gla­1­se­po­-
dría­ex­pre­sar­se­gún­las­de­fi­ni­cio­nes­vis­tas­an­-
te­rior­men­te­co­mo:­
Con­el­di­se­ño­vis­to­lo­gra­re­mos­un­com­por­ta­-
µGA(x)=­min­­{µA­B(EMG1),­µM­T(EMG2)} mien­to­sua­ve­y­pro­por­cio­nal­a­to­das­las­com­bi­-
na­cio­nes­po­si­bles.
Tam­bién­la­re­gla­9:­

µQ(x)=­min{µ­PI­B(EMG1),­µPI­T(EMG2)}
IMPLeMentacIón con PIcaXe
Y­así­to­das­las­res­tan­tes.
Po­de­mos­aho­ra­ar­mar­la­ma­triz­FAM­de­es­- Aho­ra­ve­re­mos­de­una­ma­ne­ra­sim­pli­fi­ca­da
tas­de­ci­sio­nes­(ta­bla­2). la­im­ple­men­ta­ción­de­un­control­en­un­PI­CA­XE.
El­ con­trol­ de­ los­ ac­tua­do­res­ elec­tro­me­cá­ni­cos
de­un­bra­zo­ro­bo­ti­za­do,­usan­do­só­lo­las­se­ña­-
les­de­elec­tro­mio­gra­fía­de­una­per­so­na,­pue­de
re­sul­tar­un­pro­ble­ma­más­que­in­te­re­san­te.­Pa­-
ra­ la­ im­ple­men­ta­ción­ en­ un­ mi­cro­con­tro­la­dor
sim­pli­fi­ca­re­mos­un­po­co­el­di­se­ño­que­vi­mos.

eL FuzzIFIcador
tabla 2
El­ principio­ del­ “fuzzificador”­ se­ observa­ en
la­figura­21,­aquí­hemos­­rea­li­za­do­las­si­guien­-
3)­des­fuz­zi­fi­ca­ción: La­en­tra­da­pa­ra­el­pro­- tes­mo­di­fi­ca­cio­nes:
ce­so­de­des­fuz­zi­fi­ca­ción­es­un­con­jun­to­fuzzy­y
la­ sa­li­da­ es­ un­ nú­me­ro­ real­ sim­ple.­ Qui­zás­ el • La función de pertenencia va de 0 hasta 5,
mé­to­do­más­po­pu­lar­de­­des­fuz­zi­fi­ca­ción­es­el esto es debido a que los PICAXE no pueden
cál­cu­lo­del­cen­troi­de,­que­re­tor­na­el­cen­tro­del codificar decimales, así que no tendríamos más

Capítulo 4 47
Robótica BEaM, Inteligencia artificial y lógica Difusa
que dos datos si variase solo de 0 hasta Figura 21
1.
• Despreciamos el conjunto PI por ser
de poca importancia, de manera que
sean menos los cálculos y las variables
a almacenar.
• Todo esto lleva a disminuir las re-
glas (vea la tabla 3).
• Los valores de entrada pueden ser
de 0 a 254, que son los posibles valores
en los que puede codificar la señal de
entrada, el conversor AD del microcon-
trolador.
• Para la salida el rango de valores
será de 0 hasta 16 (figura 22), lo que nos
proporcionará dieciséis pasos posibles
en la velocidad del motor, como veremos
más adelante.

nota: Es­ imprescindible­ que­ haya


leído­la­nota­anterior­para­entender­este
artículo.­Si­no­la­tiene,­la­puede­bajar­de
nuestra­web­con­la­clave­“fuzzy”.­

des­Fuz­zI­FI­ca­dor tabla 3

Esta­ operación­ se­ establece­ según­ la­ fór- soFt­wa­re


mula:
Pa­ra­ crear­ el­ soft­wa­re­ só­lo­ ne­ce­si­ta­mos­ el
edi­tor­de­flu­jo­de­PI­CA­XE­(en­el­“PI­CA­XE­Pro­-
gram­ming­ Edi­tor”­ que­ se­ pue­de­ ba­jar­ gra­tis
desde­nuestra­web­con­la­clave­PIcaXe)­y­de
pa­so­nos­ser­vi­rá­pa­ra­si­mu­lar­con­el­si­mu­la­dor
La­lógica­de­“desfuzzificador”­don­de­CE­es
el­centroide geométrico (ver­fi­gu­ra­23),­o­sea Figura 23
,­ el­ va­lor­ nu­mé­ri­co­ co­rres­pon­dien­te.­An­tes­ de
ana­li­zar­ có­mo­ fun­cio­na,­ vea­mos­ la­ im­ple­men­-
ta­ción­de­es­te­con­tro­la­dor.

Figura 22

48 Capítulo 4
Control de Brazo Robot por Señales Electromiográficas
Figura 24a
que­po­see. Figura 24b
El­dia­gra­ma­de
flu­jo­que­de­be­-
mos­ ge­ne­rar
se­rán­ los­ vis-
tos­en­las­fi­gu­-
ras­ 24a,­ b,­ c,
d,­e,­f­y­g.
En­la­fi­gu­ra­25
ve­mos­ có­mo
con­fi­gu­rar­ las
va­ria­bles.
Lue­go­ só­lo
nos­ que­da­ si­mu­lar­lo,­ no­tan­do­ có­mo­ cam­bia­ la
sa­li­da­del­puer­to­en­re­la­ción­con­la­en­tra­da.
Con­es­to­lo­gra­re­mos­que­se­gún­las­en­tra­das
0­y­1­en­ana­ló­gi­ca­va­ríen,­an­te­la­mo­di­fi­ca­ción

Figura 24c

Capítulo 4 49
Robótica BEaM, Inteligencia artificial y lógica Difusa

Figura 24 e

Figura 24 f

Figura 24 g

Figura 24 d

de­las­se­ña­les­que­le­lle­gan,­ob­-
ten­dre­mos­ dis­tin­tas­ sa­li­das­ en
los­bits­0,­1,­2­y­3­del­puer­to­C,
co­di­fi­can­do­en­bi­na­rio­los­nú­me­-
ros­de­0­a­6­que­es­pe­ra­mos­a­la
sa­li­da.

Hard­wa­re

Es­te­ soft­wa­re­ po­de­mos­ car­-


gar­lo­ aho­ra­ en­ un­ PI­CA­XE.­Así

50 Capítulo 4
Control de Brazo Robot por Señales Electromiográficas
el­ hard­wa­re­ ten­ta­ti­vo­ pa­ra­ ma­ne­jar­ el
mo­tor­lo­ve­mos­en­la­fi­gu­ra­26,­es­to­no
quie­re­de­cir­que­el­lec­tor­no­pue­da­pro­-
bar­su­pro­pio­di­se­ño,­una­vez­en­ten­di­do
el­prin­ci­pio­de­fun­cio­na­mien­to.­
Así,­ el­ dia­gra­ma­ de­ blo­ques­ de­ es­te
con­tro­la­dor­­se­rá­el­que­vemos­en­la­fi­-
gu­ra­27.

Fun­cIo­na­MIen­to

Su­pon­ga­mos­ una­ en­tra­da­ de­ 110­ en


EMG1­y­de­150­en­EMG2,­es­tas­se­ña­les
se­rán­pro­ce­sa­das­se­gún­ve­mos­en­la­fi­-
gu­ra­28.­
Ese­ va­lor­ 6­ en­ bi­na­rio­ es­ con­ver­ti­do
por­el­DAC­y­lue­go­al­res­tar­le­un­vol­ta­je
de­re­fe­ren­cia­va­a­dar­un­va­lor­ne­ga­ti­vo,
in­di­can­do­ que­ el­ mo­tor­ de­be­ gi­rar­ en
Figura 25
sen­ti­do­an­ti­ho­ra­rio.­

Figura 26

Figura 27

Capítulo 4 51
Robótica BEaM, Inteligencia artificial y lógica Difusa

Figura 28

En­ton­ces­ve­mos­se­gún­si­el­va­lor­de­sa­li­da por­ta­mien­to­sua­ve­de­una­con­trac­ción­mus­cu­-
es­me­nor­a­8­en­bi­na­rio,­el­mo­tor­gi­ra­rá­en­sen­- lar.
ti­do­an­ti­ho­ra­rio,­si­es­8,­es­to­da­rá­un­vol­ta­je­ce­- Con­clui­mos­es­ta­bre­ve­in­tro­duc­ción­al­te­ma
ro­a­la­sa­li­da­y­si­es­ma­yor­a­8­un­vol­ta­je­po­si­- ló­gi­ca­ fuzzy,­ aun­que­ que­da­ mu­cho­ por­ co­no­-
ti­vo­que­ha­ría­que­gi­re­en­sen­ti­do­ho­ra­rio.­ cer.­Espero­que­el­tema­haya­sido­de­su­agrado
Con­es­to­nos­apro­xi­ma­mos­bas­tan­te­al­com­- y­quedo­a­la­espera­de­su­consulta.­J

52 Capítulo 4
C a p í t u lo 5

Bases para la C onstruCCión de roBots y M ini -roBots


roBótiCa y M ini -roBótiCa
BeaM
BEAM es un acrónimo de las palabras Biología (Biology), Electrónica (Electronics),
Estética (Aesthetics) y Mecánica (Mechanics).
Las técnicas BEAM son una forma alternativa de enfrentarse a la robótica, ya que analiza
ésta desde un punto de vista más analógico que digital. La mayoría de los robots BEAM
carecen de tecnología digital, salvo algunas excepciones que disponen de procesadores
muy simples, que se encargan de controlar su movimiento. Mark W. Tilden, ingeniero cana-
diense, que actualmente ejerce como investigador en el Laboratorio Nacional de Los Ála-
mos, en Nuevo México (EE.UU.), es considerado el padre de esta filosofía. Uno de los aspec-
tos fundamentales de la robótica BEAM es su bajo costo, derivado en la mayoría de las oca-
siones de la reutilización de componentes extraídos de aparatos electrónicos que han per-
dido su funcionalidad (juguetes infantiles, impresoras, computadoras viejas). Además tam-
bién se utiliza como fuente de alimentación la energía solar, que presenta claras ventajas
frente a las baterías ya que las células solares tiene una larga vida y no se requiere la cons-
tante recarga desde la red eléctrica o cambio de baterías.

Capítulo 5 53
Robótica BEaM, Inteligencia artificial y lógica Difusa
IntroduccIón magnitudes cuyos valores se mueven en un
rango continuo.
Antes de comenzar debemos definir algunos
conceptos básicos que nos pueden ayudar a Ø Sistema digital.- En este caso se utiliza
comprender mejor los fundamentos y preten- información representada mediante magni-
siones de la robótica BEAM. tudes cuyos valores se mueven en un rango
Empecemos haciendo una aclaración de los discreto (“0” ó “1”).
conceptos que implica o reúne el acrónimo
BEAM: Biología (Biology), Electrónica Los dos circuitos básicos a tener en cuenta
(Electronics), Estética (Aesthetics) y Mecánica cuando hablamos de robótica BEAM son los
(Mechanics): siguientes:

Ø Biología.- Un campo que lleva 4 mil mi- Microcore


llones de años de evolución. El mundo que nos Es un circuito simple inventado y patentado
rodea es una gran fuente de inspiración y por Mark W. Tilden, que controla los robots con
aprendizaje. Por lo que la robótica BEAM extremidades (patas) coordinando el
intenta imitar muchos de los comportamientos movimiento de estas. Es un circuito simple y
propios de la madre naturaleza y todo aquello barato.
que interviene en ella. El funcionamiento básico de este circuito
consiste en ir activando los diodos LEDs de
Ø Electrónica.- Es la base fundamental de forma ordenada según el movimiento que se
esta filosofía, ya que mediante componentes quiera conseguir. Sin contar con la presencia
electrónicos (LEDs, transistores, conden- de los circuitos auxiliares PNC (Circuito de
sadores, interruptores, resistencias, etc.), se Neutralización de Proceso) y el PIN (Circuito
trata de implementar complejos comportamien- Iniciador de Proceso), la salida que se obten-
tos con simples circuitos. dría sería tal que no permitiría el correcto fun-
cionamiento de las extremidades del robot. Sin
Ø Estética.- Tal y como la entendemos, los embargo, combinando la acción de estos cir-
circuitos deben seguir diseños claros, en los cuitos se consigue que el Microcore repro-
que sea fácil distinguir todos sus componentes, duzca los estados deseados para un
para facilitar las posibles modificaciones o movimiento coordinado.
depuraciones en su diseño, modo de trabajo El principal cometido de mantener este con-
pretendido en cualquier tipo de ingeniería. trol sobre el circuito principal es que no puedan
ser activados 2 diodos opuestos al mismo
Ø Mecánica.- El campo que introduce en tiempo, ya que supondría la incompatibilidad
estos robots motores, sensores, etc. los cuales de movimiento de las extremidades
permiten dinamizar los comportamientos que pertenecientes a un mismo motor. Por tanto, si
se intentan imitar mediante los circuitos elec- activamos el PNC durante un par de segundos,
trónicos incorporados. conseguimos encender un diodo de cada
extremo con un desfase que evita lo comen-
También hay que hacer una pequeña men- tado anteriormente. Si el periodo de fun-
ción de los términos analógico y digital, ya que, cionamiento del PNC es superior a tres segun-
como se tratará en apartados posteriores, dos se logra la activación de un solo diodo en
tienen su importancia dentro de la robótica cada instante de tiempo. Si activamos el PIN
BEAM: invertimos el estado en el que se encontrara el
circuito.
Ø Sistema Analógico.- Son sistemas que El Microcore pretende acercarse a la idea
utilizan información representada mediante de red nerviosa o neuronal, considerándose de

54 Capítulo 5
Robótica y Mini-Robótica BEaM
Figura 1 vital importancia en esta filosofía por parte de
sus investigadores. En la figura 1 se puede
observar un circuito básico de robot inspirado
en Microcore.

Solar Engine
Este simple circuito se muestra en la figura 2
y almacena energía, trasformada a partir de la
luz captada por una pequeña célula solar, que
es almacenada en un condensador o disposi-
tivo de almacenamiento. Esta energía es uti-
lizada por el motor o motores del robot para
hacerlo funcionar.
La célula solar se encarga, mediante tran-
sistores (física de semiconductores), de trans-
formar la luz captada en energía eléctrica.
La filosofía básica del funcionamiento de los
robots BEAM, partiendo de la base de los cir-
cuitos anteriores podría resumirse de la si-
guiente manera: los robots, mediante los recep-
tores de los que disponen (sensibles a la luz o
al contacto en su mayoría) actúan sobre su cir-
cuitería para que ésta sea la encargada de acti-
var o desactivar motores u otras fuentes de
energía (como puede ser un circuito solar como
el comentado anteriormente), que controlan los
actuadores del robot (patas, ruedas, etc). De
esta forma se consigue un com-
portamiento del robot adaptado al
medio con el que interactúa.

roBótIcA cláSIcA VS
roBótIcA BEAM

Al hablar de robótica en términos


muy generales podríamos decir
que es una rama de la ingeniería
que trata de hacer máquinas que
sean capaces de realizar dife-
rentes tareas, en condiciones que
en principio pueden ser desconoci-
das. Esto se asemeja al compor-
tamiento humano o animal que
estudia el entorno que lo rodea
para tomar decisiones. Como se
puede dilucidar hablar de “toma de
Figura 2 decisiones” implica algún tipo de

Capítulo 5 55
Robótica BEaM, Inteligencia artificial y lógica Difusa
inteligencia, otro de los campos abiertos en su aparición a principios de los 90 para conver-
este terreno, la búsqueda de la inteligencia arti- tirse en algo lúdico, son muchos los aficionados
ficial. que investigan en diseños y nuevas posibili-
Al llegar a este punto de encuentro entre los dades, además celebran convenciones en
seres vivos y los robots que pretende encon- Canadá, la India, etc., pero en realidad no
trarse, es donde difieren más ambas ramas de parece haber estudios serios que avancen en
la robótica, ya que ponen sus bases en polos este campo.
opuestos.
Mientras que la robótica clásica busca un
modelo de inteligencia y de similitud con el HIStorIA y EVolucIón dE lA roBótIcA BEAM
comportamiento humano y animal usando la
tecnología digital, los seguidores de la filosofía Hablar de robótica BEAM es hablar de Mark
BEAM, mantienen que estos comportamientos W. Tilden, figura 3, creador de esta forma de
no podrán representarse digitalmente nunca, entender la robótica a principios de los años
debido a los límites que presenta el mundo di- noventa del siglo pasado.
gital, y por ello basa todas sus construcciones
en componentes analógicos. Figura 3
La robótica BEAM deriva de las teorías del
profesor Chris Langton acerca de la Vida
Artificial, este científico estudia desde media-
dos de los 80 las bases de la vida natural para
sintetizar un modelo de vida artificial. Estas
teorías introducen los términos: propósito de
vida, supervivencia, autosuficiencia..., que son
atribuidos a los robots BEAM.
Mark W. Tilden afirma que sus robots tienen
vida propia, o vida artificial, aunque sea en un
grado muy pequeño, ya que son autosufi-
cientes y toman decisiones en base a su super-
vivencia, por ejemplo se abastecen ellos mis- Mark W. Tilden nació en Inglaterra. Cursó
mos de la energía solar y además la buscan, sus estudios de Ingeniería de Sistemas en la
tienen un propósito de vida, que es seguir facultad de Waterloo (Canadá). Al termino de
vivos, y se adaptan al medio que los rodea para éstos hizo un master en Electrónica y trabajó
mantener este propósito de vida, afirma que al durante 7 años en la Facultad de Matemáticas
utilizar componentes electrónicos, que son de dicha universidad como Ingeniero de
menos delicados que los digitales, sus robots Robótica y Computadoras. Ha estado involu-
son mas robustos. Según estas teorías, una crado en muchos proyectos de investigación a
vez conseguido este nivel de vida artificial, si lo largo de su vida, tales como: maquinaria
asignamos una tarea a un robot BEAM, el industrial, electrónica de computadoras, sis-
propósito de vida de éste será llevarla acabo temas de realidad virtual, diseño de satélites….
mientras su supervivencia sea posible. Actualmente ejerce como investigador en la
Todas estas teorías parecen perder fuerza División de Biofísica del Laboratorio Nacional
cuando las enfrentamos al trabajo y los de los Álamos (Nuevo México, EEUU). En
avances de la robótica clásica, frente a los que estos últimos años ha colaborado en investiga-
la BEAM parece no ser mas que un ciones con la Agencia de Desarrollo de
pasatiempo o una forma económica de ini- Proyectos Avanzados de Defensa (DARPA), la
ciación al mundo de la robótica. Es por ello que NASA, el Instituto de Ciencias Físicas y la
esta filosofía parece haber perdido peso desde Universidad de California.

56 Capítulo 5
Robótica y Mini-Robótica BEaM
Los inicios de la robótica BEAM datan del El fruto de las investigaciones de Tilden en
año 1989, concretamente el 10 de Noviembre, esta forma de ver la robótica, que él mismo ha
fecha en la que Tilden construye su primer iniciado, han sido diversas publicaciones
robot BEAM en el Laboratorio MFCF Hardware acerca de los avances que, junto con sus com-
de la Universidad de Waterloo, un simple pañeros de trabajo, han ido desarrollando en
solaroller que fue capaz de recorrer 15 cm tras este nuevo campo, y que demuestran que son
20 minutos de “alimentarse de luz solar”. de las pocas personas que hacen una investi-
Tras este primer paso surgieron otros robots gación verdaderamente profesional de la mate-
cuyo nexo de unión lo podemos encontrar en la ria:
patente de Tilden (Adaptive Robotic Nervous
System and Control Circuits Therefor / 15 de Ø “LIVING MACHINES”. Hasslacher B. &
Junio de 1992), en la cual se hace referencia a Tilden M. W. Robotics and Autonomous
los circuitos básicos de estos robots, que son Systems 15, 143 (1995).
los verdaderos cerebros de estas máquinas, a
las que Tilden quiere dotar de las teorías sobre Ø “BIOMORPHIC ROBOTS AS A PERSIS-
Vida Artificial, cuyo máximo exponente es el TENT MEANS FOR REMOVING EXPLOSIVE
profesor Chris Langton, investigador científico y MINES” Symposium on Autonomous Vehicles
director del Programa de Vida Artificial del in Mine Countermeasures, U.S. Naval
Instituto de Santa Fe (Nuevo México, EEUU). Postgraduate School, Milipitas, California, June
El número de robots construidos por Tilden 1995.
alcanza ya tal magnitud, que él mismo dice
poseer un “Parque Jurásico” de robots, figura 4, Ø “LIVING MACHINES AND THE ROBOT
que cuenta ya con casi 200 ejemplares. JURASSIC PARK: PRIMITIVES TO PREDA-
TORS” Neuromorphic Workshop, Telluride,
Figura 4 Colorado, July 6, 1995, and Recursos
Smithsonian Group, Los Alamos, New Mexico,
July 14, 1995.

Ø “THEORETICAL FOUNDATIONS FOR


NERVOUS NETWORKS” NEC Research
Institute, Pittsburg, Pennsylvania, September
25, 1995, and NASA Neurons to Nanotech,
NASA Ames Research Center, Moffett Field,
California, October 18, 1995.

Ø “A CONCURRENT APPLICATION
RESEARCH PROPOSAL FOR THE DEVEL-
OPMENT OF LIVING MACHINE” NASA AIAA
Nanosat Meeting, Houston, Texas, November
1, 1995.

Ø “BIOMECH ROBOTICS: MACHINES


BUILT FOR THE HUMAN RACE” BEAM
Workshop, Los Alamos, New Mexico, April
18–20, 1996, and International BEAM Robot
Games, Southern Alberta Institute of
Technology, Calgary, Canada, May 24–26,
1996.

Capítulo 5 57
Robótica BEaM, Inteligencia artificial y lógica Difusa
Ø “AUTONOMOUS BIOMORPHIC vantes, ya que el resto son más bien aficiona-
ROBOTS AS PLATFORMS FOR SENSORS” dos que “investigadores de la materia”. Aunque
DOE Office of Scientific and Technical esto nos es óbice para que la robótica BEAM
Information, Washington, D.C., August 1996. esté extendida por todo el mundo en lugares
tan distantes como la India, Europa Occidental
Así como se han publicado todos estos o América. Entre todos estos aficionados
artículos y memorias, también existe un libro de podemos destacar algunos nombres, como:
reciente edición, en el que Tilden junto con Math Vos, Ian Bernstein, o Chiu-Yuan Fang,
David Hrynkiw, hacen una pequeña introduc- que incluso poseen sus propias páginas web
ción a este mundo de la Robótica BEAM para, donde muestran todas sus creaciones.
posteriormente, analizar en detalle varios Los avances que se han ido produciendo
proyectos de robots construidos mediante esta han sido consecuencia de las investigaciones
filosofía: de Mark Tilden, mientras que sus seguidores
se han preocupado más de hacer sus propios
Hrynkiw D. and Tilden M. W. JunkBots, diseños en pos de su propio gozo personal.
BUGBOTS, AND BOTS ON WHEELS: Actualmente se sigue manteniendo esta
BUILDING SIMPLE ROBOTS WITH BEAM línea de trabajo que ralentiza en cierta manera
TECHNOLOGy. 1ª ED. McGraw-Hill Osborne que esta filosofía alcance cotas más altas,
Media. 2002. 352 p. ISBN: 0072226013. aunque el volumen de personas interesados
por la misma es tal, que sus aportaciones son
Hasta ahora sólo se ha hablado de Mark W. poco a poco más relevantes. Por tanto, al
Tilden porque es la única persona a la que hablar del estado del arte, no nos queda más
hacen referencia todos los que, de algún modo, que hablar del “parque” de robots que existe en
se han interesado por esta filosofía, y que, tal y la actualidad, al no haber material de trabajo
como se ha demostrado, es el verdadero impul- científico riguroso que pueda ser digno de men-
sor de este movimiento. De ahí que, salvo cole- ción, exceptuando, claro está, los trabajos de
gas de Tilden del laboratorio de Los Álamos, investigación realizados en las instalaciones
como Brosl Hasslacher, no haya nombres rele- del Laboratorio Nacional de Los Álamos.

Práctica:
Clasificación de la
Robótica BEAM
IntroduccIón tos de la robótica BEAM. El primer solaroller,
construido por Mark W. Tilden, se terminó en
Como en otras disciplinas, en la robótica Noviembre de 1989 en la Universidad de
BEAM puede recurrirse a diversos criterios Waterloo (Ontario, Canadá).
para elaborar una clasificación. La que se hace Estos robots, como la mayoría de los robots
a continuación es la que se suele aceptar como surgidos a partir de la filosofía BEAM, utilizan
más adecuada, y está realizada fundamental- como fuente de energía la luz solar, y su única
mente en base a su evolución. función es el movimiento en una sola dirección
mediante una o varias ruedas. Este movimiento
Ø Solarollers oscila entre unos cuantos milímetros hasta va-
Estos dispositivos son los robots primogéni- rios centímetros. La figura 5 muestra un robot

58 Capítulo 5
Robótica y Mini-Robótica BEaM
de esta categoría, el Lunabot (César Blum
Silveira).

Figura 5

Figura 7

Además, hay que destacar que muchos de


estos robots abandonan en parte la filosofía
BEAM al no utilizar como fuente de energía la
luz solar y sí baterías (pilas generalmente).
A partir de estos tres tipos de robots BEAM
(principalmente de los Solarollers) se han
desarrollado otros muchos robots BEAM.
Ø Photovores Basten como ejemplo los siguientes:
Básicamente, estos robots consisten en la
unión de dos motores a cada uno de los cuales Ø Symets
se le asocia un Solaroller (recién lo hemos visto). Symet quiere decir “robot simétrico”. Su prin-
El movimiento del robot dependerá del circuito cipal característica es que carecen de sensores
solar que reciba una luz mas intensa, girando que les indiquen si hay obstáculos en su
hacia el foco de dicha luz. camino. Simplemente, se mueven en una direc-
En la figura 6 podemos ver algunos diseños ción que cambian cuando colisionan con un
de estos nanobots. obstáculo, figura 8.

Figura 8

Ø nocturnal robots
Estos robots almacenan energía durante el
día y cuando llega la noche comienzan a
moverse, emitiendo algún tipo de luz (mediante
leds) o sonido.
Figura 6
Ø Aquabots
Basándose en la arquitectura básica de un
Ø Walkers solaroller, un aquabot es capaz de desplazarse
Actualmente son los robots BEAM más en el medio acuático.
implementados y complejos. Hay multitud de
robots BEAM de este tipo, que varían en fun- Como se dijo al principio de este apartado,
ción del número de motores que utilizan para hay muchas posibles clasificaciones para los
mover las patas que tengan. Los más comunes robots BEAM y se ha comentado brevemente la
tienen 4 patas y dos motores que accionan más aceptada. Es posible realizar otra clasifi-
dichas extremidades, figura 7. cación bastante extendida entre los seguidores

Capítulo 5 59
Robótica BEaM, Inteligencia artificial y lógica Difusa

Figura 9

de esta técnica, se basa en la motricidad o no su movimiento, figura 10. En general son


motricidad del robot, y, dependiendo de la mo- automatismos inteligentes.
tricidad, se incluye en un grupo u otro. Según
Bruce Robinson, los robots se clasifican en: 1.b) Pummer: Son los llamados noctur-
nal robots, que almacenan durante el día la
No motrices energía que utilizan durante la noche para emi-
Motrices tir algún tipo de luz o sonido, figura 11.

A su vez, los “no motrices” pueden ser del Figura 11


tipo SITTER (Beacom, Pummer y Ornament) o
SQUIRMER (Magbot, Flagwaver y Head), tal
como veremos más adelante.
Los robots motrices pueden ser de dife-
rentes estilos y se pueden clasificar según el
cuadro mostrado en la figura 9.

roBotS no MotrIcES 1.c) Ornament: Básicamente son los


mismos robots que los dos anteriores, pero
1) Sitter: intentando conseguir un diseño atractivo como
No tienen partes que se muevan. Su único los mostrados en la figura 12.
cometido es realizar alguna función “intere-
Figura 12
sante” mediante la luz que emiten sus LEDs, o
también mediante sonidos. Los tres tipos son:

1.a) Beacon: Los destellos que emiten


sirven a otros BEAM robots para ayudarse en

2) Squirmer:
Son robots que, sin desplazarse, mueven
todo o parte de su cuerpo cuyo único fin es el
entretenimiento del usuario o creador.
Figura 10
Destacamos los siguientes:

60 Capítulo 5
Robótica y Mini-Robótica BEaM
2.a) Magbot: Utilizan para el movimiento de roBotS MotrIcES
su cuerpo campos electromagnéticos. Algunos
de ellos poseen alas para darle mayor espec- 1) Slider:
tacularidad, figura 13. Como su propio nombre indica, son capaces
de desplazarse mediante el deslizamiento
sobre una superficie. En esta categoría enu-
meramos a los siguientes robots:

Figura 16 1.a) Snake: Su


movimiento se ase-
meja al de una ser-
piente, con desplaza-
miento ondulatorio
horizontal, figura 16.

1.b) Earthworm:
Estos robots se
Figura 13
mueven al estilo de
los gusanos, siguiendo un desplazamiento
ondulatorio de compresión longitudinal, figura
2.b) Flagwaver: Hacen uso de un motor 17.
para mover una bandera o algún otro objeto
similar, tal como se aprecia en la figura 14.
Figura 14

Figura 17

2.c) Head: Estos robots giran, depen-


diendo de su complejidad, ya sea en uno o en 2) crawler:
dos ejes, en la figura 15 se puede apreciar un Se denominan así porque, su movimiento,
robot beam de esta categoría. consiste en gatear a lo largo de la superficie
sobre la que se desplazan. Encontramos los
siguientes tipos:

2.a) Turbot: Normalmente se caracteri-


zan por tener
Figura 18 2 extremi-
dades que
rotan al
mismo tiempo
y en la misma
dirección,
Figura 15 figura 18.

Capítulo 5 61
Robótica BEaM, Inteligencia artificial y lógica Difusa
2.b) Inchworm: Estos robots dividen su
cuerpo en varias articulaciones, que proporcio-
nan al robot un movimiento similar al del
gusano (Slider) pero con la diferencia de que
estas articulaciones pueden moverse selectiva-
mente, mientras que el resto del cuerpo per-
manece en el suelo, figura 19.

Figura 21

4) roller:
Son los más comunes y se desplazan uti-
lizando ruedas, motores, su propio cuerpo, etc.,
se emplea cualquier cosa que permita que rue-
Figura 19 den. Por su popularidad se dividen en:

4.1) Symet (“robot simétrico”): Estos


2.c) Tracked: Son robots cuyo sistema robots se mueven en una dirección que cam-
de movimiento y diseño es el propio de un bian cuando colisionan con un obstáculo. Su
tanque, con cintas propulsadas por motores estrucutra suele ser de la más variada, como
como el de la figura 20. muestran los diferentes casos reunidos en la
figura 22.
Figura 20
Figura 22

3) Jumper:
Son aquellos robots cuyo movimiento está
basado en saltos. 4.2) Solaroller: Se mueven en una sola
Esta clase de robots no posee una subclasi- dirección y sin llegar a recorrer más de unos
ficación y suelen ser muy populares en los con- pocos centímetros, suelen ser de muy pequeño
cursos de minirobótica debido a la gran canti- tamaño y hoy se han vuelto muy populares en
dad de variantes posibles (figura 21). la creación de insectos robots (figura 23).

62 Capítulo 5
Robótica y Mini-Robótica BEaM
5) Walker:
Son, junto con los roller, los más populares,
figura 26. Tienen varias extremidades, general-
mente cuatro, número que varía en función del
diseño, y que se mueven en secuencia para
proporcionar el desplazamiento del robot.

Figura 26

Figura 23

4.3) Popper: Utilizan varios motores y


diferentes sensores que guían al robot a su
destino, generalmente es una fuente de luz
(photopoppers) o de energía, figura 24.

6) Swimmer (a.k.a. aquabot):


Están diseñados para poder desplazarse
exclusivamente en un medio líquido, que suele
ser agua y se los divide en 2 categorías:

Figura 24 6.1) Boatbot: Se desplazan a través de


la superficie líquida en cuestión, como la lancha
mostrada en la figura 27.
4.4) Miniball: Tienen pequeñas ruedas
que accionan el movimiento de la bola que con- Figura 27
tiene el robot en sí y su estructura básica suele
ser como la que se muestra en la figura 25.

6.2) Subbot: Al contrario que los ante-


riores, éstos se desplazan bajo la superficie,
Figura 25 figura 28.

Capítulo 5 63
Robótica BEaM, Inteligencia artificial y lógica Difusa
APlIcAcIonES dE lA roBótIcA BEAM

Como ya se ha comentado, la robótica


BEAM es una materia relativamente reciente
(comienzos de los años noventa) lo que, unido
al cariz que están tomando sus desarrollos
(encaminados mas al hobby y al entrete-
nimiento que a fines provechosos para la
sociedad en general), nos llevan a comprobar
la carencia de resultados interesantes en
Figura 28 cuanto a aplicaciones reales se refiere.
Así, las pocas aplicaciones que se están
7) Flier (a.k.a. aerobot): sacando de estas máquinas tienen que ver con
Estos robots son capaces de desplazarse en su peculiar fisonomía y estructura, que les per-
el medio aéreo mediante el uso de alas que son mite alcanzar lugares prácticamente inaccesi-
propulsadas por pequeños motores, figura 29. bles al ser humano y de ahí que se utilicen con
cierta frecuencia a tales efectos, ya que per-
miten realizar algún tipo de tarea sencilla que
las personas no pueden a causa de esta
imposibilidad de llegar al lugar mencionado.
Como prueba de ello, tenemos las conver-
saciones que mantuvieron el numerosamente
citado señor Tilden con compañías cercanas a
la propia NASA, para enviar algunos de sus
robots a la Luna con el propósito de recoger
rocas en lugares poco accesibles al ser
humano para su posterior estudio ya aquí en la
Figura 29 Tierra. Aunque sólo hay constancia de estas
conversaciones, y en ningún sitio se menciona
si dichos encuentros han llegado a buen puerto
8) climber: y los robots de los que se habla se enviaran
Su nombre puede llevar a engaño, ya que no finalmente a la Luna, figura 31.
escalan obstáculos de ningún tipo. La denomi-
nación viene porque son capaces de seguir (y de Figura 31
ahí lo de escaladores) una línea y, posterior-
mente, deshacer lo recorrido, figura 30.

Algunos robots BEAM se han utilizado


experimentalmente en la desactivación de
explosivos, aunque no queda claro en dichas
Figura 30 noticias de que los robots de los que se habla

64 Capítulo 5
Robótica y Mini-Robótica BEaM
sean propios de esta manera de construir los 90 no podemos decir que se haya avanzado
robots, hablamos del RoboLobster lo suficiente como para considerar que estemos
(Northeastern University Marine Science ante una nueva rama de la robótica capaz de
Center), figura 32. competir con la “robótica digital”.
La robótica BEAM es una forma económica
Figura 32 de acercarse a la construcción de robots y por
tanto más llamativa a la hora de introducirnos
en el desarrollo de pequeños robots, ya que
con costes muy pequeños podemos estar
probando y viendo los resultados, lo cual
resulta más atractivo.
Las teorías sobre las que se monta esta
filosofía de trabajo: supervivencia, autosuficien-
cia, propósito de vida, autocontrol (toma de
decisiones)… también resultan muy intere-
santes, pero parecen perder fuerza si vemos
los resultados reales de los robots BEAM, ya
Como hay poco que tratar con respecto al que tampoco hay muchas aplicaciones que
tema de aplicaciones reales, vamos a estudiar desarrollen algo en el mundo real en estos
un poco en detalle algunos proyectos de parti- momentos, aunque podemos considerar que
culares que se han interesado en la materia. como materia en vía de investigación en el
momento en el que esté consolidada las aplica-
ciones pueden ser inmediatas.
concluSIonES Por tanto y en resumen, las ventajas más
claras que presenta la robótica BEAM es el bajo
Una vez vistos los conceptos básicos de la coste de desarrollo y la relativa simpleza de la
robótica BEAM y los desarrollos que se han mayoría de los diseños y las piezas que los
conseguido si pensamos que es una materia componen que además son más robustas o
que marca sus primeros pasos a principios de resistentes que los “delicados” sistemas digi-
tales, de modo que es muy sen-
cillo acceder a ellos. Sin embargo,
parece que a nivel profesional no
ha tenido mucha aceptación y por
consiguiente es una rama de la
robótica que está mas cerca de
ser un hobby que algo profesional,
exceptuando al pequeño grupo de
ingenieros que investigan lidera-
dos por Mark W. Tilden.
Hoy en día ninguna materia puede
ser subestimada, por lo que
seguiremos a la espera de que un
día la robótica BEAM nos sor-
prenda y nos muestre un robot
con vida e inteligencia artificial y lo
más sorprendente aún que lo
haga manteniendo su filosofía
analógica. J

Capítulo 5 65
C a p í t u lo 6
Luego de haber definido qué es
la robótica BEAM, en este capí-
tulo vamos a montar un
pequeño mini-robot “desde
cero”, aprovechando los con-
ceptos vertidos tanto en este
texto como en diferentes edi-
ciones de Saber Electrónica.
Este desarrollo se ha expuesto
de diversas maneras en distin-
tas publicaciones y su funcio-
namiento es similar al “siguelí-
neas” que publicáramos en
Saber 212. Nuestro mini-robot,
al que hemos bautizado
MICROBOT , será armado teniendo en cuenta tres etapas: Estructura, Sensores y
Actuadores. Indicaremos cómo montar nuestra estructura, cuáles son los sensores
adecuados y daremos diferentes opciones para manejar a los motores (actuadores).

A rme un P equeño roBoT desde C ero


C onsTruCCión de un m iCroBoT
IntroduccIón pre­sa­ Mi­crosys­tems­ En­gi­nee­ring­ que­ se
mues­tra­en­el­co­pe­te­de­la­no­ta,­don­de­po­de­-
Pa­ra­ la­ cons­truc­ción­ de­ nues­tro­ mi­cro­bot mos­ver­có­mo­sus­di­se­ña­do­res­han­in­te­gra­do
po­de­mos­uti­li­zar­mu­chos­ti­pos­de­es­truc­tu­ras, há­bil­men­te­ la­ pla­ca­ de­ cir­cui­to­ im­pre­so­ de
que­de­pen­de­rán­de­la­fun­ción­que­que­rra­mos con­trol­en­la­es­truc­tu­ra­me­cá­ni­ca­y­jus­ta­men­-
rea­li­zar,­no­es­lo­mis­mo­di­se­ñar­un­ro­bot­bí­pe­- te­de­ba­jo­de­él­se­en­cuen­tra­alo­ja­da­una­ba­te­-
do­que­un­ras­trea­dor.­Unas­de­las­es­truc­tu­ras ría­de­plo­mo­de­12V­y­0,8mA/h.
más­uti­li­za­das­es­la­de­los­jue­gos­edu­ca­cio­na­-
les­ de­ cons­truc­ción­ ti­po­ Le­go,­ Me­ca­no­ o­ Ei­-
tech­in­te­re­san­tes­por­su­­fle­xi­bi­li­dad,­y­de­for­-
ma­un­po­co­más­“pro­fe­sio­nal”­la­es­truc­tu­ra­de
los­Fis­cher­tech­nik­que­fue­ron­di­se­ña­das­ori­gi­-
na­ria­men­te­ pa­ra­ apli­ca­cio­nes­ téc­ni­cas,­ tan­to
es­tá­ti­cas­co­mo­de­es­truc­tu­ras­me­cá­ni­cas­con
mo­vi­mien­to.
En­la­fi­gu­ra­1­ve­mos­la­es­truc­tu­ra­de­un­mi­-
cro­bot­ rea­li­za­do­ con­ una­ es­truc­tu­ra­ Fis­cher­-
tech­nik.
Una­ es­truc­tu­ra­ rea­li­za­da­ con­ un­ Me­ca­no
es,­por­ejem­plo,­el­ca­so­del­Pí­vot-1­de­la­em­- Figura 1

Capítulo 6 69
Robótica BEaM, Inteligencia artificial y lógica Difusa

Figura 2b Figura 2c

Figura 2a

Pa­ra­el­ca­so­de­nues­tro­ras­- uti­li­zan­do­ rue­das,­ po­de­mos


trea­dor,­ que­ no­ de­be­ sal­var pen­sar­en­va­rias­op­cio­nes­que
obs­tá­cu­los­ y­ que­ se­rá­ un­ mi­- po­de­mos­ uti­li­zar­ de­pen­dien­do
cro­bot­ ex­pe­ri­men­tal­ de­ ba­jo Figura 2d de­la­apli­ca­ción­que­se­le­quie­-
cos­to,­po­de­mos­uti­li­zar­una­es­- ra­ dar­ a­ nues­tro­ mi­cro­bot­ de
truc­tu­ra­más­sen­ci­lla,­co­mo­por “in­ves­ti­ga­ción”.­Así­pues,­po­de­-
ejem­plo­un­tro­zo­de­me­ta­cri­la­- mos­ op­tar­ por­ una­ es­truc­tu­ra
to,­po­lies­ti­re­no,­PVC,­pla­ca­de for­ma­da­por­dos­rue­das­a­trac­-
cir­cui­to­im­pre­so­o­in­clu­so­pue­- ción­in­de­pen­dien­tes­y­una­rue­-
de­ser­vir­nos­la­ca­ja­de­plás­ti­co da­lo­ca­co­mo­la­que­se­mues­-
de­un­Com­pact­Disc.­En­nues­- tra­en­el­dia­gra­ma­de­la­fi­gu­ra
tro­ ca­so­ va­mos­ a­ uti­li­zar­ dos 2a,­ o­ por­ una­ ar­qui­tec­tu­ra­ de
pla­cas­ de­ po­lies­ti­re­no­ blan­co tri­ci­clo,­co­mo­la­de­la­fi­gu­ra­2b,
de­ 180­ x­ 13,5­ mm,­ pe­ro­ pue­- for­ma­da­ por­ dos­ rue­das­ de
den­uti­li­zar­se­otras­me­di­das,­el­he­cho­de­uti­li­- trac­ción­ y­ una­ de­ di­rec­ción­ in­de­pen­dien­tes­ o
zar­dos­pla­cas,­es­porque­de­es­ta­ma­ne­ra,­co­- por­una­es­truc­tu­ra­si­mi­lar­a­los­co­ches­tra­di­cio­-
mo­lue­go­se­ve­rá,­se­pue­den­po­ner­las­ba­te­rías na­les­ for­ma­da­ por­ dos­ rue­das­ trac­to­ras­ con
en­el­pi­so­in­fe­rior­y­el­cir­cui­to­de­con­trol­de­los con­trol­ de­ la­ di­rec­ción­ y­ dos­ rue­das­ sin­ trac­-
mo­to­res­y­sen­so­res­en­el­su­pe­rior. ción,­co­mo­la­que­se­mues­tra­en­la­fi­gu­ra­2c.
A­la­ho­ra­de­di­se­ñar­la­trac­ción­del­mi­cro­bot En­ la­ fi­gu­ra­ 2d­ ve­mos­ la­ es­truc­tu­ra­ pa­ra­ el

Figura 3a.- Movimiento hacia delante, se Figura 3b.- Movimiento hacia atrás, se Figura 3c.- Movimiento de giro a la dere-
hacen girar los dos motores en la misma di- hacen girar los dos motores en la misma di- cha, se hacen girar el motor izquierdo en
rección hacia delante (sentido horario). Es- rección hacia atrás (sentido contrario a la sentido horario (hacia delante) y el motor
to provoca un movimiento rectilínea supo- agujas del reloj). Esto provoca un movi- de la derecha en sentido antihorario (hacia
niendo que los dos motores son exacta- miento rectilínea suponiendo que los dos atrás). Esto provoca un movimiento de giro
mente iguales. motores son exactamente iguales. a la derecha de la estructura.

70 Capítulo 6
Construcción de un Microbot
di­se­ño­ de­ nues­tro­ mi­cro­bot. den­fa­bri­car­se­de­ma­de­ra­o­uti­-
Las­ “rue­das­ lo­cas”,­ de­ben­ ser li­zar­unos­dis­cos­com­pac­tos­es­-
ca­pa­ces­de­ro­dar­y­pi­vo­tar­so­- tro­pea­dos­ y­ por­ su­pues­to­ tam­-
bre­sí­mis­mas,­al­igual­que­las bién­ pue­den­ ­ com­prar­se­ en
rue­das­ mo­tri­ces­ de­be­rán­ de tien­das­ de­ mo­de­lis­mo,­ és­tas
ser­ca­pa­ces­de­adap­tar­se­a­los sue­len­ser­me­jo­res­pe­ro­mu­cho
obs­tá­cu­los­del­te­rre­no.­Su­mo­- más­ca­ras.
vi­mien­to­ al­re­de­dor­ del­ eje­ so­-
bre­ el­ que­ pi­vo­ta­ de­be­ ser­ lo
más­sua­ve­po­si­ble,­pa­ra­no­di­- Figura 3d.- Movimiento de giro a la iz- Mo­vI­lI­dad de nues­tra
fi­cul­tar­la­ro­ta­ción­del­mi­cro­bot, quierda, se hacen girar el motor izquierdo es­truc­tu­ra
de­ lo­ con­tra­rio­ es­ po­si­ble­ que en sentido antihorario (hacia atrás) y el mo-
tor de la derecha en sentido horario (hacia
se­blo­quee­y­pa­ti­ne­si­no­se­eli­- adelante). Esto provoca un movimiento de La­es­truc­tu­ra­que­he­mos­ele­gi­-
ge­de­for­ma­ade­cua­da.­Las­so­- giro a la izquierda de la estructura. do­ pa­ra­ nues­tro­ mi­cro­bot­ nos
lu­cio­nes­pa­ra­es­te­ti­po­de­rue­- per­mi­ti­rá­ rea­li­zar­ mo­vi­mien­tos
das­pue­den­ser­mu­chas,­no­so­- ha­cia­ade­lan­te,­ha­cia­atrás,­gi­ro
tros­he­mos­op­ta­do­por­una­rue­- a­la­de­re­cha,­gi­ro­a­la­izquierda,
da­ que­ gi­ra­ li­bre­men­te­ so­bre las­pla­cas­con­un­ro­tu­la­dor,­pa­-
su­eje,­gra­cias­a­una­pe­que­ña ra­po­der­lue­go­ta­la­drar­a­10­mm
pla­ta­for­ma­con­ro­da­mien­tos­de de­ ca­da­ es­qui­na.­ Es­to­ lo­ ha­re­-
las­que­po­de­mos­en­con­trar­ca­- mos­ sin­ qui­tar­ el­ plás­ti­co­ pro­-
si­ en­ cual­quier­ fe­rre­te­ría,­ ade­- tec­tor­ con­tra­ ara­ña­zos­ que­ lle­-
más­ hay­ un­ gran­ sur­ti­do­ de van­ pe­ga­das­ por­ en­ci­ma­ las
ellas­en­lo­re­fe­ren­te­a­ta­ma­ños. pla­cas­ de­ po­lies­ti­re­no,­ de­ es­ta
Otra­ op­ción­ po­dría­ ser­ uti­li­zar ma­ne­ra,­ des­pués­ que­da­rán­ to­-
la­bo­la­de­un­ro­lón­de­de­so­do­- tal­men­te­lim­pias­y­sin­ara­ña­zos,
Figura 3b.- Movimiento hacia atrás, se
ran­te,­ a­ la­ que­ se­ le­ adap­ten hacen girar los dos motores en la misma di- co­mo­mues­tra­la­fi­gu­ra­4.­
una­ pe­que­ñas­ es­cua­dras­ pa­ra rección hacia atrás (sentido contrario a las Una­ vez­ mar­ca­das­ las­ pla­cas,
fi­jar­la­a­la­es­truc­tu­ra.­Vea­en­la agujas del reloj). Esto provoca un movi- pa­sa­mos­ a­ ta­la­drar­ ca­da­ una
miento rectilínea suponiendo que los dos
figura­ 3­ las­ distintas­ opciones motores son exactamente iguales. de­las­pla­cas­uti­li­zan­do­un­ta­la­-
de­movimiento. dro­de­so­bre­me­sa.­Uti­li­za­re­mos
Res­pec­to­a­las­rue­das­mo­tri­ces­que­he­mos una­bro­ca­pa­ra­me­tal­de­3­mm,­ya­que­es­tos­ta­-
uti­li­za­do­ pa­ra­ la­ trac­ción­ del­ mi­cro­bot,­ son­ de la­dros­son­pa­ra­fi­jar­pos­te­rior­men­te­unos­se­pa­-
las­uti­li­za­das­en­ju­gue­tes­y­que­se­pue­den­en­- ra­do­res­me­tá­li­cos­de­los­uti­li­za­dos­pa­ra­fi­jar­las
con­trar­ fá­cil­men­te­ en­ las­ tien­das­ que­ ven­den pla­cas­de­cir­cui­to­im­pre­so­a­los­cha­sis­o­ca­jas.
ma­te­rial­a­los­cen­tros­de­edu­ca­ción­se­cun­da­ría Ver­fi­gu­ra­5.
pa­ra­la­asig­na­tu­ra­de­Tec­no­lo­gía,­tam­bién­pue­- En­es­te­pri­mer­mon­ta­je­uti­li­za­re­mos­dos­mo­-

Figura 4 Figura 5 Figura 6

Capítulo 6 71
Robótica BEaM, Inteligencia artificial y lógica Difusa

Figura 7 Figura 8 Figura 9

to­res­que­va­mos­de­co­rrien­te­con­ti­nua­con­ca­- por­ los­ cir­cui­tos­ im­pre­sos­ pa­ra­ fi­jar­los­ a­ los


ja­re­duc­to­ra­de­17:1­con­do­ble­eje­que­tra­ba­ja cha­sis­ me­tá­li­cos.­ Pa­ra­ con­se­guir­ una­ se­pa­ra­-
con­ ten­sio­nes­ de­ 1,5V­ a­ 12V,­ pre­via­men­te­ le ción­de­30­mm­he­mos­uti­li­za­do­cua­tro­se­pa­ra­-
ha­re­mos­tam­bién­unos­ta­la­dros­de­3­mm­co­mo do­res­de­20­mm­y­otros­cua­tro­de­10­mm­y­los
los­que­se­mues­tran­en­la­fi­gu­ra­6­pa­ra­su­pos­- co­rres­pon­dien­tes­tor­ni­llos­de­20­y­10­mm.
te­rior­fi­ja­ción­a­la­pla­ca­ba­se­me­dian­te­tor­ni­llos. En­ la­ fi­gu­ra­ 9­ ve­mos­ las­ dos­ pla­ta­for­mas
Es­tos­mo­to­res­tie­nen­la­ven­ta­ja­de­su­ba­jo­pre­- mon­ta­das­y­pre­pa­ra­das­pa­ra­so­por­tar­la­ba­te­-
cio,­pe­ro­el­in­con­ve­nien­te­de­que­la­ve­lo­ci­dad ría­o­ba­te­rías­del­mi­cro­bot­y­su­cir­cui­te­ría­elec­-
que­al­can­zan­es­gran­de­y­por­lo­tan­to­son­más tró­ni­ca.
di­fí­ci­les­de­con­tro­lar.
An­tes­de­rea­li­zar­el­mon­ta­je,­se­re­co­mien­da
sol­dar­unos­ca­bles­fle­xi­bles­a­los­ter­mi­na­les­del los sen­so­res del MI­cro­bot
mo­tor,­ya­que­aho­ra­se­rá­mas­fá­cil­que­cuan­do
es­té­mon­ta­do. Es­ta­eta­pa­o­ni­vel­es­tá­for­ma­da­por­el­con­-
Co­mo­ter­cer­pun­to­de­apo­yo­de­nues­tra­es­- jun­to­de­sen­so­res,­así­co­mo­los­sis­te­mas­bá­si­-
truc­tu­ra­ va­mos­ a­ uti­li­zar­ una­ “rue­da­ lo­ca”,­ de cos­pa­ra­su­ma­ne­jo.­Va­mos­a­cons­truir­un­sis­-
las­que­se­pue­den­en­con­trar­prác­ti­ca­men­te­en te­ma­de­con­trol­pa­ra­con­se­guir­un­mó­vil­reac­ti­-
cual­quier­ fe­rre­te­ría,­ és­tas­ con­cre­ta­men­te,­ las vo,­que­no­es­tá­con­tro­la­do­por­un­mi­cro­con­tro­-
he­mos­com­pra­do­en­el­Ras­tro­Ma­dri­le­ño,­uti­li­- la­dor,­ pe­ro­ que­ nos­ ser­vi­rá­ co­mo­ pa­so­ pre­vio
za­re­mos­la­más­pe­que­ña­que­es­la­que­me­jor pa­ra­ob­te­ner­co­no­ci­mien­tos­so­bre­có­mo­ha­cer
se­adap­ta­ba­a­nues­tra­es­truc­tu­ra.­ fun­cio­nar­es­tos­“ca­cha­rros”.
Co­mo­ rue­da­ lo­ca­ pue­de­ in­clu­so,­ uti­li­zar­se Co­men­za­re­mos­ de­ una­ ma­ne­ra­ sen­ci­lla
un­ro­lón­de­de­so­do­ran­te­con­la­opor­tu­na­adap­- cons­tru­yen­do­ un­ cir­cui­to­ que­ de­pen­dien­do­ de
ta­ción­pa­ra­fi­jar­la­en­la­es­truc­tu­ra.­Ver­fi­gu­ra­7 una­ se­ñal­ de­ en­tra­da­ “0”­ o­ “1”­ ha­ga­ gi­rar­ un
El­ si­guien­te­ pa­so­ es­ fi­jar­ los­ mo­to­res­ y­ la mo­tor­de­co­rrien­te­con­ti­nua­ha­cia­de­lan­te­o­ha­-
rue­da­lo­ca­a­nues­tra­es­truc­tu­ra­uti­li­zan­do­tor­ni­- cia­atrás,­es­de­cir­en­sen­ti­do­ho­ra­rio­o­en­sen­-
llos,­ es­ re­co­men­da­ble­ que­ to­dos­ los­ tor­ni­llos ti­do­an­ti­ho­ra­rio.
sean­del­mis­mo­pa­so­por­ejem­plo­de­mé­tri­ca­3, El­cir­cui­to­que­uti­li­za­mos­pa­ra­el­pri­mer­ro­-
de­esa­for­ma­po­dre­mos­in­ter­cam­biar­los­y­ade­- bot­reac­ti­vo­no­uti­li­za­nin­gún­mi­cro­con­tro­la­dor
más­de­es­ta­for­ma­con­una­so­la­bro­ca­po­dre­- y­lo­he­mos­di­se­ña­do­así­pa­ra­em­pe­zar­a­com­-
mos­ha­cer­to­dos­los­ta­la­dros.­ pren­der­ el­ fun­cio­na­mien­to­ de­ los­ sen­so­res­ de
En­ la­ fi­gu­ra­ 8­ ve­mos­ los­ mo­to­res­ con­ sus in­fra­rro­jos­CNY70,­cu­yas­ca­rac­te­rís­ti­cas­se­in­-
rue­das­y­la­rue­da­lo­ca­fi­ja­das­a­la­es­truc­tu­ra­in­- clu­yen­ en­ es­te­ mis­mo­ nú­me­ro­ y­ el­ cir­cui­to­ de
fe­rior­del­mi­cro­bot con­trol­de­po­ten­cia­pa­ra­los­mo­to­res.
Es­ta­mos­ya­pre­pa­ra­dos­pa­ra­mon­tar­el­pi­so El­pri­mer­cir­cui­to­que­he­mos­uti­li­za­do­ha­si­-
su­pe­rior. do­ el­ de­ la­ fi­gu­ra­ 10,­ que­ no­ es­ más­ que­ un
Em­plea­mos­ se­pa­ra­do­res­ de­ los­ uti­li­za­dos puen­te­en­H­de­tran­sis­to­res­con­tro­la­do­por­los

72 Capítulo 6
Construcción de un Microbot
sen­so­res­CNY70­y­unos­in­ver­so­res­Sch­mitt­Tri­- den­ con­ el­ áno­do­ y­ cá­to­do­ del­ emi­sor,­ y­ las
gger,­que­se­en­car­gan­de­con­for­mar­las­se­ña­- otras­dos­se­co­rres­pon­den­con­el­co­lec­tor­y­el
les­del­sen­sor­a­ni­ve­les­ló­gi­cos­más­es­ta­bles. emi­sor­del­fo­to­tran­sis­tor,­que­ha­ce­las­ve­ces­de
re­cep­tor.­Los­va­lo­res­de­las­re­sis­ten­cias­son­tí­-
El Sensor CNY70 pi­ca­men­te­de­RT=10kΩ­­pa­ra­el­fo­to­tran­sis­tor,
El­CNY70­es­un­sen­sor­de­in­fra­rro­jos­de­cor­- mien­tras­ que­ pa­ra­ el­ dio­do­ emi­sor­ es
to­al­can­ce­ba­sa­do­en­un­dio­- RD=220Ω,­sien­do­tí­pi­cos­los
do­ emi­sor­ de­ luz­ in­fra­rro­ja­ y Figura 11 dos­mon­ta­jes­que­se­in­di­can
un­ re­cep­tor­ for­ma­do­ por­ un en­la­fi­gu­ra­11.­
fo­to­tran­sis­tor,­ am­bos­ apun­- En­ el­ cir­cui­to­ por­ el­ que­ nos
tan­do­en­la­mis­ma­di­rec­ción, he­mos­in­cli­na­do­en­el­di­se­ño
y­cu­yo­fun­cio­na­mien­to­se­ba­- es­el­de­la­op­ción­“a”,­de­ma­-
sa­ en­ la­ ca­pa­ci­dad­ de­ re­fle­- ne­ra­ que­ cuan­do­ el­ sen­sor
xión­del­ob­je­to,­y­la­de­tec­ción es­té­ so­bre­ la­ lí­nea­ ne­gra­ la
del­ra­yo­re­flec­ta­do­por­el­re­- luz­es­ab­sor­bi­da­y­el­fo­to­tran­-
cep­tor.­El­dis­po­si­ti­vo­dis­po­ne sis­tor­ se­ man­tie­ne­ en­ cor­te,
de­cua­tro­pi­nes­de­co­ne­xión. por­lo­que­a­la­sa­li­da­el­cir­cui­-
Dos­ de­ ellos­ se­ co­rres­pon­- to­ en­tre­ga­ un­ ni­vel­ ba­jo,

Figura 10

Capítulo 6 73
Robótica BEaM, Inteligencia artificial y lógica Difusa
mien­tras­ que­ cuan­do­ el­ sen­sor­ es­té­ so­bre­ el tabla­1
fon­do­blan­co­que­re­fle­ja­la­luz,­el­fo­to­tran­sis­tor Pa­rá­me­tro vdd­ Mí­ni­mo tí­pi­co Má­xi­mo uni­da­des
se­ sa­tu­ra­ y­ a­ la­ sa­li­da­ del­ cir­cui­to­ ob­te­ne­mos VT+­ 5.0­ 2.2­ 2.9­ 3.6­ V­
un­ni­vel­al­to.­El­fun­cio­na­mien­to­del­cir­cui­to­“b” 10­ 4.6­ 5.9­ 7.1­ V
es­ jus­ta­men­te­ al­ con­tra­rio,­ cuan­do­ el­ sen­sor 15­ 6.8­ 8.8­ 10.8­ V
es­tá­so­bre­la­lí­nea­ne­gra,­el­fo­to­tran­sis­tor­per­- VT-­ 5.0­ 0.9­ 1.9­ 2.8­ V
ma­ne­ce­en­cor­te­y­en­tre­gan­do­a­la­sa­li­da­un­ni­- 10­ 2.5­ 3.9­ 5.2­ V
vel­ al­to­ en­ el­ co­lec­tor,­ mien­tras­ que­ si­ se­ en­- 15­ 4.0­ 5.8­ 7.4­ V
cuen­tra­so­bre­un­fon­do­blan­co,­el­haz­in­fra­rro­-
jo­se­re­fle­ja­y­el­fo­to­tran­sis­tor­se­sa­tu­ra­en­tre­- ñal­V1­al­can­za­el­va­lor­VT+­la­sa­li­da­VO­bas­cu­-
gan­do­a­la­sa­li­da­del­cir­cui­to­un­ni­vel­ba­jo. la­a­un­ni­vel­al­to,­y­no­vuel­ve­a­to­mar­un­ni­vel
Pa­ra­ob­te­ner­se­ña­les­“di­gi­ta­les”­des­de­es­tos ba­jo­has­ta­que­la­en­tra­da­no­lle­gue­a­VT-.
sen­so­res­uti­li­za­mos­puer­tas­in­ver­so­ras­Sch­mitt
Trig­ger,­que­tie­nen­la­ven­ta­ja­de­que­en­el­mis­-
mo­chip­nos­en­con­tra­mos­con­seis­in­ver­so­res el sIs­te­Ma de ac­tua­cIón:­
(CD4016).­Es­tos­dis­po­si­ti­vos­tie­nen­una­ca­rac­- con­trol de Mo­to­res
te­rís­ti­ca­ de­ trans­fe­ren­cia,­ co­mo­ la­ ­ que­ se
mues­tra­en­la En­ nues­tro­ “Mi­cro­bot”,­ uno­ de­ los­ mo­to­res
Figura 12 fi­gu­ra­ 12.­ En es­tá­ con­tro­la­do­ por­ un­ puen­te­ en­ H,­ for­ma­do
es­ta­cur­va­se por­ cua­tro­ tran­sis­to­res­ de­ po­ten­cia­ mon­ta­dos
apre­cia­ que en­an­ti­pa­ra­le­lo.
si­ la­ ten­sión Los­ tran­sis­to­res­ tra­ba­jan­ en­ con­mu­ta­ción­ y
de­ en­tra­da se­ com­por­tan­ co­mo­ in­te­rrup­to­res­ con­tro­la­dos
a s ­c i e n ­d e por­la­se­ñal­que­les­lle­ga­des­de­el­sen­sor­a­tra­-
des­de­ 0V vés­ del­ in­ver­sor.­ Su­ fun­cio­na­mien­to­ es­ el­ si­-
has­ta­un­ni­vel guien­te:­ en­ la­ fi­gu­ra­ 14­ ve­mos­ el­ puen­te­ de
al­to,­la­tran­si­- tran­sis­to­res­con­tro­la­do­por­el­sen­sor­y­su­in­ver­-
ción­se­pro­du­ce­si­guien­do­la­cur­va­A­y­se­pro­- sor­aso­cia­do,­si­el­sen­sor­con­su­puer­ta­in­ver­-
du­ce­­pa­ra­el­va­lor­VT+­de­no­mi­na­do­um­bral­as­- so­ra­en­tre­ga­un­ni­vel­al­to,­a­la­ba­se­de­los­tran­-
cen­den­te.­Por­el­con­tra­rio,­si­la­en­tra­da­es­tá­a sis­to­res­TR3­y­TR2­(NPN­y­PNP)­les­lle­ga­res­-
un­ni­vel­al­to­y­se­va­dis­mi­nu­yen­do­has­ta­0V,­la pec­ti­va­men­te­ un­ ni­vel­ al­to­ y­ un­ ni­vel­ ba­jo,­ lo
tran­si­ción­ se­ pro­du­ce­ si­guien­do­ la­ cur­va­ B, que­les­ha­ce­en­trar­si­mul­tá­nea­men­te­en­sa­tu­-
cuan­do­se­al­can­za­el­de­no­mi­na­do­um­bral­des­- ra­ción­mien­tras­que­a­TR1­y­TR4­que­les­lle­gan
cen­den­te­VT-.­ las­mis­mas­se­ña­les­se­que­dan­en­cor­te­por­ser
Los­va­lo­res­de­VT+­y­de­VT-­pa­ra­las­puer­- de­sig­no­con­tra­rio­(PNP­y­NPN­res­pec­ti­va­men­-
tas­de­tec­no­lo­gía­TTL,­son­de­4,7V
y­ 0,9V­ res­pec­ti­va­men­te,­ pe­ro­ pa­ra Figura 13
el­ ca­so­ del­ 40106­ de­pen­de­ de­ la
ten­sión­de­ali­men­ta­ción­y­pue­de­to­-
mar­los­va­lo­res­de­la­ta­bla­1.
Es­tas­ com­puer­tas­ son­ de­ gran
uti­li­dad­ cuan­do­ se­ de­sea­ con­tro­lar
un­ cir­cui­to­ di­gi­tal­ con­ se­ña­les­ pro­-
ve­nien­tes­de­sen­so­res­co­mo­los­in­-
fra­rro­jos.­En­la­fi­gu­ra­13­se­mues­tra
có­mo­ac­túa­un­cir­cui­to­no­in­ver­sor,
el­cir­cui­to­fren­te­a­una­se­ñal­que­no
es­pu­ra­men­te­di­gi­tal.­Cuan­do­la­se­-

74 Capítulo 6
Construcción de un Microbot
Figura 14 Figura 15a

Figura 15b Figura 16 son­ TR1­ y


TR4,­ mien­-
tras­ que­ los
que­ pa­san­ al
es­ta­do­ de
cor­te­ son
TR3­ y­ TR2,
co­mo­ pue­de
ver­se­en­la­fi­-
gu­ra­15b.
El­ pro­ble­ma
de­es­te­ti­po­de­cir­cui­tos­es­la­caí­da­de­ten­sión
real­ que­ hay­ en­ los­ tran­sis­to­res­ y­ que­ ha­brá
que­ com­pen­sar­la­ con­ la­ ba­te­ría,­ que­ por­ su­-
te),­ en­ es­tas­ con­di­cio­nes­ el­ mo­tor­ gi­ra­ en­ un pues­to­va­dis­mi­nu­yen­do­en­la­me­di­da­que­és­ta
sen­ti­do­ co­mo­ pue­de­ ver­se­ en­ la­ fi­gu­ra­ 15a. se­va­ago­tan­do.­Pa­ra­evi­tar­es­tos­pro­ble­mas­en
Cuan­do­cam­bian­el­va­lor­de­la­se­ñal­que­en­tre­- el­ di­se­ño­ fi­nal­ he­mos­ uti­li­za­do­ un­ puen­te­ in­te­-
ga­ el­ sen­sor,­ los­ tran­sis­to­res­ que­ se­ sa­tu­ran gra­do,­el­LM293B.­Es­te­cir­cui­to­es­un­dri­ver­de
4­ca­na­les,­ca­paz­de­pro­por­cio­nar­una
tabla­2 co­rrien­te­de­sa­li­da­de­has­ta­1A­por­ca­-
Pin­ nom­bre­ des­crip­ción
1­ Chip­Ena­ble­1­ Ha­bi­li­ta­ción­de­los­ca­na­les­1­y­2­
nal.­Ca­da­ca­nal­es­con­tro­la­do­por­se­-
2­ In­put­1­ En­tra­da­del­ca­nal­1­ ña­les­ de­ en­tra­da­ com­pa­ti­bles­ TTL­ y
3­ Out­put­1­ Sa­li­da­del­ca­nal­1­ ca­da­ pa­re­ja­ de­ ca­na­les­ dis­po­ne­ de
4­ GND­ Tie­rra­de­ali­men­ta­ción­ una­en­tra­da­de­ha­bi­li­ta­ción­que­des­co­-
5­ GND­ Tie­rra­de­ali­men­ta­ción­ nec­ta­las­sa­li­das­de­los­mis­mos.­El­cir­-
6­ Out­put­2­ Sa­li­da­del­ca­nal­2­ cui­to­ dis­po­ne,­ ade­más,­ de­ una­ pa­ti­ta
7­ In­put­2­ En­tra­da­del­Ca­nal­2­
pa­ra­la­ali­men­ta­ción­de­las­car­gas­que
8­ VS­ Ali­men­ta­ción­de­las­car­gas­
9­ Chip­Ena­ble­2­ Ha­bi­li­ta­ción­de­los­ca­na­les­3­y­4­ se­es­tán­con­tro­lan­do,­de­for­ma­que­di­-
10­ In­put­3­ En­tra­da­del­ca­nal­3­ cha­ali­men­ta­ción­es­in­de­pen­dien­te­de
11­ Out­put­3­ Sa­li­da­del­ca­nal­3­ la­ló­gi­ca­de­con­trol.­En­la­fi­gu­ra­16­se
12­ GND­ Tie­rra­de­ali­men­ta­ción­ mues­tran­su­en­cap­su­la­do­de­16­pi­nes,
13­ GND­ Tie­rra­de­ali­men­ta­ción­ y­en­la­ta­bla­2­su­dis­tri­bu­ción­de­pa­ti­-
14­ Out­put­4­ Sa­li­da­del­Ca­nal­4­ llas­y­la­des­crip­ción­de­las­mis­mas.
15­ In­put­4­ En­tra­da­del­Ca­nal­4­
En­ ba­se­ a­ las­ di­fe­ren­tes­ eta­pas­ des­-
16­ VSS­ Ali­men­ta­ción­del­C.I.­
crip­tas,­ el­ cir­cui­to­ fi­nal­ de­ nues­tro­ Mi­-

Capítulo 6 75
Robótica BEaM, Inteligencia artificial y lógica Difusa

Figura 17

cro­bot­si­guelí­neas­es­el­que­se­mues­tra­en­la­fi­- alu­mi­nio­ co­mo­ so­por­te­ pa­ra­ los­ sen­so­res


gu­ra­ 17­ que­ po­see­ el­ cir­cui­to­ de­ de­tec­ción CNY70­ y­ pa­ra­ su­je­tar­los­ he­mos­ uti­li­za­do­ una
(sen­so­res),­ las­ puer­tas­ Sch­mitt­ Trig­ger­ pa­ra cin­ta­ad­he­si­va­por­las­dos­ca­ras,­que­es­un­sis­-
con­for­mar­los­im­pul­sos­y­el­dri­ver­LM293­pa­ra
el­ con­trol­ de­ los­ mo­to­res.­ En­ las­ fi­gu­ras­ 18­ y
19,­se­mues­tra­el­cir­cui­to­mon­ta­do­so­bre­pla­ca
de­pro­to­ti­po­(ex­pe­ri­men­ta­dor­di­gi­tal)­y­el­mon­-
ta­je­fi­nal­de­nues­tro­mi­cro­bot,­en­el­que­pue­de
ver­se­ có­mo­ se­ ha­ co­lo­ca­do­ una­ es­cua­dra­ de

Figura 18 Figura 19

76 Capítulo 6
Construcción de un Microbot
te­ma­ muy­ eco­nó­mi­co­ y­ sen­ci­llo­ de­ su­je­ción. tabla­3 dri­vers­ 1­ y­ 2.­ La­ se­ñal
Pa­ra­su­je­tar­la­pla­ca­del­cir­cui­to­y­las­ba­te­rías vInn voutn venn EN2­ac­ti­va­la­pa­re­ja­de
he­mos­uti­li­za­do­unas­go­mas­elás­ti­cas.­Las­ba­- H H H dri­vers­ 3­ y­ 4.­ Las­ sa­li­-
te­rías,­des­pués­de­to­mar­la­fo­to,­las­he­mos­me­- L L H das­ OUTn­ se­ aso­cian
ti­do­ en­tre­ las­ dos­ pla­cas­ de­ po­lies­ti­re­no­ pa­ra H Z L con­ las­ co­rres­pon­dien­-
que­no­es­tor­ben.­­Pa­ra­po­der­uti­li­zarlos­en­otros L Z L tes­INn.­Las­se­ña­les­de
mon­ta­jes­los­he­mos­co­nec­ta­do­a­tra­vés­de­un sa­li­da­son­am­pli­fi­ca­das
ca­ble­pla­no­a­un­co­nec­tor­­ti­po­pos­te­hem­bra­y res­pec­to­a­las­de­en­tra­da­tan­to­en­ten­sión,­co­-
en­la­pla­ca­he­mos­co­lo­ca­do­el­co­nec­tor­ma­cho mo­en­co­rrien­te­(má­xi­mo:­1A)­y­la­ta­bla­3­es­la
co­rres­pon­dien­te.­­­ de­ fun­cio­na­mien­to­ pa­ra­ ca­da­ uno­ de­ los­ dri­-
vers.

con­trol de Mo­to­res Por Me­dIo H= Nivel alto "1",


de MI­cro­con­tro­la­dor L= Nivel bajo "0",
Z = Alta Impedancia
Si­ cons­tru­yó­ el­ Mi­cro­bot­ ha­brá­ ob­ser­va­do
que­en­se­gui­da­to­ma­ve­lo­ci­dad,­ya­que­tie­ne­po­- En­la­ta­bla­4­se­des­cri­ben­los­va­lo­res­ab­so­-
co­ coe­fi­cien­te­ de­ re­duc­ción­ de­ los­ mo­to­res­ y lu­tos­má­xi­mos­del­dri­ver­L293B.
que­ca­be­cea­mu­cho­en­el­se­gui­mien­to­de­la­lí­-
nea­ne­gra­so­bre­fon­do­blan­co. tabla­4
Va­mos­a­ha­cer­un­aná­li­sis­de­ta­lla­do­del­fun­-
sím­bo­lo­ Pa­rá­me­tro­ va­lor­ uni­da­des­
cio­na­mien­to­del­dri­ver­L293­y­su­con­trol­a­tra­- VS Ten­sión­de­ali­men­ta­ción­pa­ra­las­car­gas 36 V
vés­de­un­mi­cro­con­tro­la­dor,­pa­ra­el­ma­ne­jo­de VSS Ten­sión­de­ali­men­ta­ción­de­la­ló­gi­ca 36 V
mo­to­res­de­co­rrien­te­con­ti­nua.­Cuan­do­ana­li­ce­- Vi­ Ten­sión­de­en­tra­da 7­ V­
Vinh­ Ten­sión­de­ha­bi­li­ta­ción 7 V
mos­ los­ mo­to­res­ pa­so­ a­ pa­so,­ ve­re­mos­ có­mo Iout­ In­ten­si­dad­de­pi­co­de­sa­li­da 2 A
uti­li­zar­lo­en­es­te­ti­po­de­mo­to­res.­Pa­ra­el­con­- Ptot Po­ten­cia­to­tal­de­di­si­pa­ción 5­ W­
Tstg,­Tj Tem­pe­ra­tu­ra­de­al­ma­ce­na­je­y­de­la­unión -40­a­+150 ºC
trol­del­mo­tor­he­mos­ele­gi­do­el­PIC16F84­pa­ra
ello.­El­L293B­es­un­dri­ver­de­4­ca­na­les­ca­paz
de­pro­por­cio­nar­una­co­rrien­te­de­sa­li­da­de­has­- En­ la­ ta­bla­ 5­ de­ la­ página­ siguiente­ ve­mos
ta­1A­por­ca­nal.­Ca­da­ca­nal­es­con­tro­la­do­por las­ ca­rac­te­rís­ti­cas­ eléc­tri­cas­ pa­ra­ ca­da­ ca­nal
se­ña­les­de­en­tra­da­com­pa­ti­bles­TTL­y­ca­da­pa­- pa­ra­los­si­guien­tes­pa­rá­me­tros:­
re­ja­de­ca­na­les­dis­po­ne­de­una­se­ñal­de­ha­bi­li­-
ta­ción­ que­ des­co­nec­ta­ las­ sa­li­das­ de­ los­ mis­- VS­=­24V,­VSS­=5V,­Tamb­=­25ºC.
mos.­Dis­po­ne­de­una­pa­ta­pa­ra­la­ali­men­ta­ción
de­las­car­gas­que­se­es­tán­con­tro­lan­do,­de­ma­- Vea­mos,­ se­gui­da­men­te,­ al­gu­nas­ for­mas­ de
ne­ra­ que­ di­cha co­nec­tar­ los­ mo­to­res­ de­ co­rrien­te­ con­ti­nua­ al
Figura 20 ali­men­ta­ción­ es dri­ver.
in­de­pen­dien­te­ de
la­ ló­gi­ca­ de­ con­-
trol. Giro de Dos Motores en un Único Sentido:
En­la­fi­gu­ra­20,­se En­la­fi­gu­ra­21­se­mues­tra­el­mo­do­de­fun­-
mues­tra­el­dia­gra­- cio­na­mien­to­de­dos­mo­to­res­de­co­rrien­te­con­ti­-
ma­ de­ blo­ques nua­que­gi­ran­en­un­úni­co­sen­ti­do:
del­L293B.­
La­ se­ñal­ de­ con­- • El motor M1 se activa al poner a nivel bajo
trol­1EN1­ac­ti­va­la la entrada de control A.
pa­re­ja­de­ca­na­les • El motor M2 se activa al poner a nivel alto
for­ma­da­ por­ los la entrada de control B.

Capítulo 6 77
Robótica BEaM, Inteligencia artificial y lógica Difusa
En­ la­ fi­gu­ra­ 21­ ve­mos
la­co­ne­xión­de­dos­mo­to­-
res­ de­ con­ti­nua,­ M1­ ac­ti­-
vo­ por­ “0”­ y­ M2­ por­ “1”.
En­ la­ ta­bla­ 6­ ve­mos­ el
mo­do­ de­ fun­cio­na­mien­to
del­ cir­cui­to­ de­ la­ fi­gu­ra
21.­­Los­dio­dos­D1­y­D2,
es­tán­ co­nec­ta­dos­ pa­ra
pro­te­ger­ el­ cir­cui­to­ cuan­-
do­ se­ ge­ne­ran­ los­ pi­cos
de­arran­que­de­los­mo­to­-
res.­ Si­ no­ se­ tra­ba­ja­ a
má­xi­ma­ po­ten­cia­ de­ tra­-
ba­jo,­ pue­den­ eli­mi­nar­se
del­cir­cui­to.­

Giro de Un Motor
en los Dos Sentidos:
El­ cir­cui­to­ de­ la­ fi­gu­ra
22­ per­mi­te­ con­tro­lar­ el
do­ble­ sen­ti­do­ de­ gi­ro­ del
mo­tor.­Cuan­do­la­en­tra­da
C­es­tá­a­ni­vel­ba­jo­y­la­D
a­ni­vel­al­to,­el­mo­tor­gi­ra
ha­cia­la­iz­quier­da.
Cam­bian­do­la­en­tra­da­C­a­ni­vel­al­to­y­la­D­a Mon­ta­je del drI­ver l293b­
ni­vel­Ba­jo,­se­cam­bia­el­sen­ti­do­de­gi­ro­del­mo­- con el MI­cro­con­tro­la­dor PIc
tor­ha­cia­la­de­re­cha.­­
Si­se­quie­re­pro­te­ger­el­cir­cui­to­con­tra­po­si­- Pa­ra­com­pro­bar­el­fun­cio­na­mien­to­del­dri­ver
bles­pi­cos­de­co­rrien­te­in­ver­sa­en­el­mo­men­to L293B­con­el­de­un­mi­cro­con­tro­la­dor,­va­mos­a
de­arran­que­del­mo­tor,­se­re­co­mien­da­co­nec­tar uti­li­zar­el­PIC16F84,­que­es­un­­ chip­que­to­dos
unos­dio­dos­tal­y­co­mo­se­mues­tra­en­la­fi­gu­ra nues­tros­lec­to­res­ya­co­no­cen­y­que­pue­de­ser
23.­En­es­te­ca­so­la­ta­bla­7­nos­mues­tra­el­mo­- reem­pla­za­do­ por­ un­ PIC16F627,­ si­ es­ que­ se
do­de­fun­cio­na­mien­to. to­man­los­re­cau­dos­en­la­in­clu­sión­de­una­pe­-
Figura 21 Figura 22

78 Capítulo 6
Construcción de un Microbot
Figura 23 Figura 24 Figura 26

tabla­6 que­ña­ru­ti­na­en­el­pro­-
Vinh­ A­ Mo­tor­M1­ B­ Mo­tor­M2­ gra­ma,­tal­co­mo­ex­pli­-
H­ H Pa­ra­da­rá­pi­da­del­mo­tor H Gi­ro cá­ra­mos­ en­ Sa­ber­ Nº
H L Gi­ro L Pa­ra­da­Rá­pi­da­del­mo­tor 215,­ tam­bién­ usa­re­-
L X Mo­tor­des­co­nec­ta­do,­gi­ro­li­bre X Mo­tor­des­co­nec­ta­do,­gi­ro­li­bre mos­ un­ mo­tor­ de­ los
que­ya­he­mos­em­plea­-
do,­ un­ in­ver­sor­ ti­po­ Sch­mitt­ Trig­ger­ del­ ti­po
40106­y­nues­tro­dri­ver.
En­ la­ fi­gu­ra­ 24­ ve­mos­ el­ mo­tor­ pa­ra­ las
prác­ti­cas­con­el­mi­cro­con­tro­la­dor­y­el­dri­ver.­
Tam­bién­mon­ta­re­mos­el­cir­cui­to­de­la­fi­gu­ra
25,­que­mues­tra­el­es­que­ma­del­mon­ta­je­pa­ra
el­ con­trol­ de­ mo­to­res­ con­ el­ dri­ver­ L293B­ y­ el
PIC16F84.­Pa­ra­com­pro­bar­su­fun­cio­na­mien­to,
va­mos­a­es­cri­bir­el­pro­gra­ma­motor1.asm,­que
con­tro­la­el­dri­ver­del­mo­tor­de­ma­ne­ra­que­de­-
pen­dien­do­ del­ es­ta­do­ del­ con­mu­ta­dor­ RA0.­ Si
RA0­ce­rra­do­(“0”)­o­abier­to­(“1”),­el­mo­tor­se­pa­-
ra­o­gi­ra­res­pec­ti­va­men­te.­
El­ or­ga­ni­gra­ma­ del­ pro­gra­ma­ es­ el­ que­ se
mues­tra­ en­ la­ fi­gu­ra­ 26­ y­ el­ pro­gra­ma­ mo­to­-
r1.asm­se­re­pro­du­ce­en­el­cua­dro­1.­Si­de­sea,
Ud.­ pue­de­ ba­jar­ el­ pro­gra­ma­ de­ nues­tra­ web
con­la­cla­ve­Microbot.
Si­guien­do­ con­ el­ mo­do­ de­ fun­cio­na­mien­to
del­ dri­ver­ co­nec­ta­do­ al­ mi­cro­con­tro­la­dor,­ rea­li­-

tabla­7
vinh­ a­ b­ Mo­tor­
H­ L­ L Pa­ra­da­rá­pi­da­del­mo­tor
H­ H­ H­ Pa­ra­da­rá­pi­da­del­mo­tor
H­ L­ H­ Gi­ro­a­la­Iz­quier­da
H­ H­ L­ Gi­ro­a­la­de­re­cha
L X X Mo­tor­des­co­nec­ta­do,­gi­ro­li­bre
Cuadro 1

Capítulo 6 79
Robótica BEaM, Inteligencia artificial y lógica Difusa
Figura 25

za­mos­un­se­gun­do­ejer­ci­cio,­en­es­te­ca­so­con
el­ pro­gra­ma:­ ­ motor2.asm,­ que­ de­pen­dien­do
del­ es­ta­do­ del­ ­ in­te­rrup­tor­ RA0­ es­té­ ce­rra­do
(“0”)­o­abier­to­(“1”),­el­mo­tor­gi­ra­en­el­sen­ti­do
que­le­mar­ca­el­es­ta­do­de­con­mu­ta­dor­de­RA1.
Si­RA1=0­se­rea­li­za­el­gi­ro­a­la­de­re­cha­del­mo­-
tor,­si­por­el­con­tra­rio­RA1=1­el­sen­ti­do­de­gi­ro
del­mo­tor­es­ha­cia­la­iz­quier­da.­El­pro­gra­ma­se
mues­tra­en­el­Cua­dro­2.­El­sen­ti­do­de­gi­ro­­de
los­ pro­gra­mas,­ de­pen­de­rá­ de­ có­mo­ se­ ha­yan
rea­li­za­do­ las­ co­ne­xio­nes­ de­ las­ bor­nas­ de­ los
mo­to­res,­ si­ no­ coin­ci­den,­ in­ter­cam­biar­ las­ co­-
ne­xio­nes.­ El­ con­mu­ta­dor­ y­ la­ re­sis­ten­cia­ co­-
nec­ta­dos­a­la­en­tra­da­RA1,­po­de­mos­sus­ti­tuir­-
los­ por­ el­ cir­cui­to­ de­ la­ fi­gu­ra­ ­ 27,­ de­ ma­ne­ra
que­ cuan­do­ el­ sen­sor­ es­té­ so­bre­ un­ ob­je­to
blan­co,­el­haz­de­in­fra­rro­jos
se­ re­fle­ja,­ el­ tran­sis­tor­ se Figura 27
sa­tu­ra­y­en­RA1­se­ob­tie­ne
un­ni­vel­al­to,­mien­tras­que­si
se­ en­fren­ta­ el­ emi­sor­ a­ un
ob­je­to­ne­gro,­el­haz­de­in­fra­-
rro­jos­del­emi­sor­es­ab­sor­bi­-
do,­ por­ lo­ que­ el­ tran­sis­tor
no­con­du­ce­y­en­RA1­se­ob­-
ten­drá­un­ni­vel­ba­jo.­J Cuadro 2

80 Capítulo 6

S-ar putea să vă placă și