Documentos de Académico
Documentos de Profesional
Documentos de Cultura
net/publication/269986714
CITATION READS
1 3,193
1 author:
Andres San-Millan
University of Castilla-La Mancha
28 PUBLICATIONS 202 CITATIONS
SEE PROFILE
All content following this page was uploaded by Andres San-Millan on 24 December 2014.
Entre las plataformas móviles empleadas clásicamente en las tareas de robótica móvil destacan los
robots basados en sistemas de locomoción mediante ruedas u orugas, robos basados en patas
(tanto antropomórficos como de forma animal), robots aéreos y robots submarinos.
Existe un último tipo de plataforma móvil cuyo sistema de locomoción se basa en la deformación
de su propia estructura, como por ejemplo los robots serpiente, oruga y gusano. El control de este
tipo de sistemas presenta una gran dificultad debido a su alto grado de redundancia, pero como
contrapartida los convierte en altamente flexibles y adaptables.
El objetivo del presente texto es el estudio de las diversas opciones existentes a la hora de
controlar este tipo de robots, la comprobación de la eficacia de los algoritmos para producir el
desplazamiento de los mismos, y el diseño y la fabricación de un prototipo físico autónomo de
bajo coste donde implementarlos
1. MOTIVACIÓN
Entre estos entornos podemos encontrar desiertos como el de Mojave (habitado por la serpiente
de cascabel “Crotalus Cerastes”), selvas tropicales como las de Nueva Guinea (habitadas por las
pitones arborícolas “Morelia Viridis”), o incluso las hay que pueblan ecosistemas marinos como la
“Laticauda Colubrina” o cobra marina propia de los océanos Índico y Pacífico.
1
Proyecto Fin de Carrera, dirigido por el profesor Vicente Feliu Batlle, en el año 2011, actualmente concluido.
1
Además es necesario destacar que muestran una gran capacidad de escalabilidad, ya que pueden
encontrarse especímenes de casi todos los tamaños desde la “Leptotyphlops Carlae” que mide tan
sólo 10 cm, hasta la “Eunectes Murinus” o anaconda capaz de llegar a medir hasta 12 metros de
longitud.
Como se indica en (Dowling, 1997: 6) las ventajas que ofrece la locomoción serpentinoide frente a
otras plataformas clásicas compuestas por ruedas o patas son las siguientes:
Todas estas características convierten a este tipo de robots en candidatos perfectos para realizar
tareas que abarcan desde la exploración espacial a la cirugía endoscópica, pasando por
aplicaciones industriales como la inspección de sistemas de tuberías.
2. MECANISMO DE LOCOMOCIÓN.
Partiendo del hecho de que la principal fuente de inspiración para el diseño de robots basados en
la locomoción serpentinoide son los animales que se desplazan empleando ondulaciones
corporales como las serpientes o las orugas, es necesario desentrañar cómo consiguen desplazarse
estos animales.
Los primeros estudios acerca del movimiento serpentinoide fueron llevado a cabo por el doctor
Shigeo Hirose del Instituto Tecnológico de Tokio, cuyos resultados se encuentran recopilados en
(Hirose, 1993).
-2πk 2πk
K(s) = αsin s 1.
l l
Donde:
l: Longitud de la curva
s: Distancia a lo largo de la curva, s Є [0,1]
k: Número de ondulaciones, k > 0
α: Ángulo de serpenteo, α Є [0º,121º]
2
El parámetro α o ángulo de serpenteo, se define como el ángulo que forma la tangente a la curva
que pasa por el punto s = 0 y determina la forma que tendrá la curva. El efecto de este ángulo
puede verse en el gráfico 1
Así mismo una definición alternativa para la curvatura de la curva es el ritmo de cambio del vector
unidad tangente a la curva o:
dαs
K(s) = 2.
ds
2πk
αs = αcos s 3.
l
A partir de esta curva resulta inmediato definir la onda serpentinoide como una extensión de la
curva serpentinoide, pero dependiente además de la variable temporal, obteniéndose la siguiente
ecuación:
2πk 2πk
K(s, t) = - αsin t + s 4.
l l
2πk
s
x(s, t) = ∫ cos αcos t + s ds 5.
0 l
2πk
s
y(s, t) = ∫ sin αcos t + s ds 6.
0 l
Las integrales de las ecuaciones [5] y [6] no presentan solución analítica y deben resolverse
numéricamente, (aspecto que se abordará más adelante).
3
Hasta ahora se tiene definida la onda serpentinoide, pero utilizando una única onda solamente se
puede realizar desplazamientos de avance y retroceso en una única dirección, de forma similar a
como se mueven las orugas. Más adelante se comprobará que este tipo de desplazamiento resulta
muy eficaz para la inspección de conductos que no presenten tramos acodados.
Para lograr desplazamientos en tres dimensiones se necesita combinar dos ondas serpentinoides
de forma transversal, una de ellas contenida en el plano XY y otra contenida en el plano XZ,
mediante esta superposición de ondas se consiguen emular los cuatro principales modos de
desplazamiento de las serpientes: en concertina, movimiento lateral, movimiento serpentino y
movimiento rectilíneo
3. CONSIDERACIONES DE DISEÑO.
Como consecuencia de los resultados anteriores para realizar el diseño del prototipo se tuvieron
en cuenta distintos factores:
A la hora de fabricar el robot se optó por la elección de una arquitectura modular, ya que resulta
menos complejo de diseñar que un sistema compuesto por articulaciones motorizadas de dos
grados de libertad, y permite igualmente emplear los modos de desplazamiento basados en tanto
en una como en dos ondas serpentinoides
Los dos criterios de diseño restantes se consideraron a fin de optimizar el coste tanto en tiempo
como en dinero utilizado en el robot
4
Como puede verse en la fotografía el prototipo consta de un total de 8 articulaciones, tiene una
longitud total de 68 cm y una sección transversal de 7,2 x 7,2 cm. Además el diseño modular del
robot permite que las articulaciones se sitúen alineadas en el mismo plano o rotadas 90º unas
respecto a otras (cabeceo - guiñada)
Los actuadores encargados del movimiento del robot son 8 servomotores modelo Futaba s3003,
este tipo de servomotores se suelen emplear en aeromodelismo y representan una alternativa
más económica que otras variantes de uso exclusivo en robótica, sus características técnicas más
relevantes son:
Para el sistema de alimentación del robot se optó por el uso de pilas alcalinas comerciales modelo
AAA, ya que se pueden encontrar fácilmente en cualquier centro comercial y permiten una rápida
substitución, de las pilas gastadas. Sus principales características son:
Para la sensorización del robot se utiliza una cámara inalámbrica alimentada mediante una pila
alcalina comercial de 9 V, los detalles técnicos de la cámara son:
5
para controlar la posición de los servomotores, para esta tarea se utilizó una tarjeta controladora
de servos “Pololu Micro Serial Servo Controller” que presenta las siguientes características:
Para el diseño de la parte mecánica del robot, la estrategia empleada fue la siguiente:
6
Figura 2. DISEÑO TRIDIMENSIONAL DE UN MÓDULO
4. ALGORITMOS DE CONTROL
Como se comentó al final de la sección destinada a los mecanismos de locomoción las soluciones a
las ecuaciones descubiertas por el profesor Hirose no presentan soluciones analíticas, esta
ausencia de soluciones conlleva la existencia de las diversas alternativas existentes para controlar
robots serpientes.
Para coordinar la posición de las articulaciones del robot de forma que éste reproduzca las ondas
serpentinoides que garanticen su movimiento hay diversos métodos, según se indica en (González,
2008: 44-49):
Este método consiste en la creación de una tabla en la que se pueden encontrar agrupados por
parejas valores de posiciones angulares y de instantes temporales, de forma que en cada instante
de tiempo para saber qué posición deben adoptar las articulaciones del robot, sencillamente se
recurre a la tabla creada a tal efecto.
En este caso se trata de aplicar las mismas técnicas que se emplean para calcular los ángulos que
deben adoptar las articulaciones de los robots manipuladores para alcanzar la posición y
orientación deseada.
En este caso en lugar de tomar como referencia la base del robot se toma como referencia el
módulo del extremo y éste se mueve conforme a una función sinusoidal.
7
Aunque los robots serpiente pueden considerarse como manipuladores con un elevado grado de
redundancia, y con este algoritmo las tablas de ángulos se generan automáticamente, resulta una
forma ineficaz de resolver el problema debido al elevado coste computacional que conllevan los
algoritmos iterativos de resolución.
Esta solución tiene un origen bio-inspirado. La existencia de los centros generadores de patrones,
o CGP fue documentada por primera vez por Wilson en su estudio sobre el vuelo de las langostas
(Wilson, 1961: 471-490):
Aunque un modelo matemático exacto de los CGP existentes en los animales conlleva una gran
complejidad, puede adoptarse como solución una primera aproximación en forma de función
senoidal simple.
De hecho el método empleado para el control del robot consiste precisamente en esto, cada
módulo oscila conforme a una función senoidal y el control de sus parámetros (amplitud,
frecuencia y desfase) es llevado a cabo por el usuario que actúa de “cerebro”.
Este sistema de control basado en osciladores sinusoidales produce una solución más precisa de lo
que a primera vista podría esperarse, y si se compara la forma de una onda serpentinoide con una
simulación obtenida para un modelo discreto de robot en la que las articulaciones siguen esta
regla de control puede comprobarse que producen resultados idénticos como se muestra en el
gráfico 2.
La razón de esta coincidencia es precisamente el hecho de que el que las articulaciones obedezcan
una regla sinusoidal encaja con las definiciones proporcionadas por las ecuaciones [2] y [3]
8
5. SIMULACIONES REALIZADAS
El algoritmo de control empleado para la locomoción del robot se basa en los osciladores
sinusoidales, concretamente en la propagación de dos ondas transversales a lo largo del cuerpo
del robot.
Por lo tanto el modo de desplazamiento del robot vendrá determinado por completo por la
elección de los parámetros de dichas ondas, algunas de las combinaciones posibles, y sus efectos
pueden verse en el gráfico 3:
En primer lugar se realizó la simulación del modo de desplazamiento en línea recta, por ser el más
apropiado para el desplazamiento del robot dentro de tuberías de diámetro similar al del robot, de
forma que se obtuvieron los siguientes resultados para una simulación de 50 segundos de
duración:
9
Gráfico 4. TRAYECTORIA RECORRIDA PARA DESPLAZAMIENTO EN LÍNEA RECTA
Fuente:
elaboración propia
10
En último lugar se simularon los modos de desplazamiento correspondientes a “círculo” y
“rotación” para 50 segundos de funcionamiento, estos modos permiten que el robot realice giros
en el plano, mediante el desplazamiento en círculo se realizan giros con un radio de curvatura
controlable pero de forma ineficaz, y mediante el desplazamiento de rotación se realizan giros con
un radio de curvatura igual a cero pero de una forma muy rápida y eficaz.
V-REP es un simulador que puede ser usado para probar y evaluar cualquier tipo de plataforma
robótica, tanto las incluidas a modo de ejemplo, como otras desarrolladas por el usuario. Este es el
caso del robot presentado en este artículo, que fue incluido como parte de los modelos de prueba
ofrecidos con el programa.
6. EJEMPLOS DE APLICACIÓN
Tambien pudo observarse este desplazamiento en la demostración realizada con el prototipo real
durante las jornadas de la primera semana de la robótica en la ETSII de Ciudad Real celebrada en
Octubre de 2010.
12
Figura 4. DESPLAZAMIENTO LATERAL
Así mismo se ha conseguido, variando la orientación de los módulos que el robot se desplace de
forma análoga a como lo hacen las orugas; este tipo de desplazamiento se ha aplicado a la
inspección de conductos como puede verse en la figura 4 donde se muestra el funcionamiento del
prototipo en la realidad y en el entorno virutal.
7. SOFTWARE DE CONTROL
El programa desarrollado para que un usuario pueda controlar de forma sencilla el robot ha sido
creado en Visual Basic debido principalmente a la facilidad que ofrece este lenguaje de
programación para la elaboración de interfaces gráficas, así como por su sencillez a la hora de
controlar la comunicación mediante puerto serie.
El aspecto que presenta la interfaz de control que ve el usuario final es el que puede observarse en
la figura 5
13
Figura 5. INTERFAZ DE CONTROL
Una vez elegido el modo de desplazamiento el único parámetro que debe elegir el usuario es la
velocidad de desplazamiento, pudiendo parar el robot, avanzar o retroceder según convenga.
Las imágenes captadas mediante la cámara del robot se muestran en la parte inferior derecha de
la pantalla y sirven como sistema de realimentación en el esquema de control, ya que permiten
que el usuario tome las decisiones oportunas.
Por último el programa también permite que el usuario configure todos los parámetros de las
ondas de forma manual, (por si el robot se encontrase con un escenario insalvable con los
algoritmos y preprogramados), así como el control individual de cada articulación; (esta función
resulta de gran utilidad para la orientación de forma precisa de la cámara).
8. CONCLUSIONES
En este artículo se han presentado las principales características del diseño y desarrollo de un
robot serpiente, así como las diferentes alternativas existentes para el control de su locomoción.
AGRADECIMIENTOS
A mi director de proyecto el Dr. Vicente Feliu Batlle por su ayuda y constante apoyo. Al Dr. Juan González
Gómez por la colaboración prestada y al Dr. Marc Andreas Freese por incluir el modelo virtual del robot
dentro de su programa de simulación (V-REP).
14
BIBLIOGRAFÍA
Alonso-Puig, Alejandro. (2005). Application of Waves Displacement Algorithms for the Generation
of Gaits in an All terrain Hexapod. Climbing and Walking Robots, Septiembre, 343-348.
Borenstein, Johann, Hansen, Malik y Nguyen, Hung. (2006) The OmniTread OT-4 Serpentine Robot
for Emergencies and Hazardous Environments. International Joint Topical Meeting: Sharing
Solutions for Emergencies and Hazardous Environments, Febrero.
Chen, Li, Wang, Yuechao, y Ma, Shugen. (2004). Studies on lateral rolling locomotion of a snake
robot. IEEE International Conference on Robotics and Automation, volumen 5, 5070-5074.
Chirjkjian, Gregor S.y Burdick, Joel W. (1995). Kinematically optimal hyperredundant manipulator
configurations. IEEE transactions on Robotics and Automation. 11, 794-806.
Cohen, Avis H. y Holmes, Philip J. (1982). The Nature of the Couplings Between Segmental
Oscillators of the Lamprey Spinal Generator for Locomotion: A Mathematical Model. Journal of
Mathematical Biology. 13, 345–369
Crespi, Alessandro, Badertscher, André, y Guignard, André. (2005). Swimming and crawling with an
amphibious snake robot. IEEE International Conference on Robotics and Automation, 3035–
3039
Dowling, Kevin. (1997). Limbless Locomotion: Learning to Crawl with a Snake Robot. Tesis doctoral
CMU-RI-TR-97-48 del Robotics Institute, Carnegie Mellon University.
González Gómez, Juan. (2008). Modular Robotics and Locomotion: Aplication to Limbless Robots.
Robot. Tesis doctoral de la Universidad Autónoma de Madrid.
Hirose, Shigeo. (1993). Biologically Inspired Robots (Snake-like Locomotor and Manipulator).
Oxford Science Press.
Wilson, Donal M. (1961). The central nervous control of flight in a locust. Journal of Experimental
Biology, 38, 471–490.
15