Вы находитесь на странице: 1из 13

INSTITUTO TECNOLÓGICO DE CELAYA

Desarrollo de sistema de detección de obstáculos para


robot móvil autónomo empleando un Kinect

Luis Francisco Herrera Garay, Verónica Ruíz Galván


13031081@itcelaya.edu.mx
13031023@itcelaya.edu.mx

Asesor: Mauro Santoyo Mora

A 2 de Febrero del 2018


Introducción
Problema
Los robots móviles son importantes por su capacidad de desplazarse donde las personas no
pueden, o donde las condiciones son inadecuadas. Por ejemplo, para realizar investigaciones
en la superficie de Marte, un robot espacial puede viajar durante más de un año y sobrevivir
en unas condiciones donde no existe aire ni agua, algo imprescindible para la supervivencia
de los seres humanos. En la Administración Nacional de la Aeronáutica y del Espacio
(NASA) se utiliza de forma asidua estos robots, como por ejemplo, los robots Spirit y
Oportunity.
En las aplicaciones cotidianas para los robots móviles se pueden considerar aquellos que se
usan de manera doméstica, por ejemplo los robots de asistencia humana, para este caso es
necesario poder monitorear el entorno donde el vehículo hará el recorrido con el fin de
conocer la configuración actual de elementos con los que interactuará, para ello se necesita
desarrollar un sistema capaz de identificar los límites del entorno, empleando técnicas de
visión artificial es posible desarrollar algoritmos para la navegación de un vehículo de manera
segura.
Para el desarrollo de estos robots de servicio se requiere
Justificación
El área de la robótica es un tema de investigación y se ha avanzado en cuanto al conocimiento
y desarrollo de estos sistemas; para su mejora se han planteado muchos retos, tanto en el
diseño físico como en el software y en la integración de éstos dos.
Los robots aplicados a áreas no industriales son variados y diferentes. Una de estas
aplicaciones son los robots de servicio humano, ya sea para uso personal, protección,
entretenimiento, exploración, de servicio a equipo, como mantenimiento, reparación,
limpieza, o de funciones autónomas aplicados a vigilancia, inspección, etc.

Objetivo general
Desarrollar un sistema implementado en un robot móvil capaz de viajar de un punto a otro y
evadir obstáculos (de tamaño mayor a una lata) durante su recorrido con la ayuda de un
Kinect. El sistema debe decidir qué ruta es mejor para llegar a su punto objetivo un ambiente
controlado, es decir con un suelo firme y plano sin perturbaciones
Objetivos específicos

1. Desarrollar un método para obtener el mapa bidimensional del entorno donde se


encuentra el robot.
2. Implementar un algoritmo de planificación de trayectorias para generar la ruta que el
robot debe seguir a partir del mapa bidimensional.
3. Desarrollar un programa que integre el sistema motriz con el sistema de planificación
de trayectorias que permita al robot llegar a un punto determinado de manera
autónoma.
4. Desarrollar una interfaz gráfica para operar el robot a distancia.(extra )

Alcance
El alcance del presente proyecto comprende la primera fase del desarrollo de un robot de
servicio donde únicamente se desarrollará un sistema de navegación en un entorno no
conocido de antemano, en el cual habrá obstáculos y deberá viajar de un punto a otro de
manera autónoma evadiendo dichos obstáculos con la ayuda de un Kinect y un algoritmo de
planeación de trayectorias. El entorno en el cual se realizarán las pruebas de navegación será
en un ambiente controlado descrito por un terreno plano sin des niveles. El robot utilizado es
de fabricación propia hecho en madera, de tracción diferencial y dos ruedas de bola. El
desarrollo de este proyecto cubrirse en un plazo máximo de 15 semanas.
Marco teórico
Este trabajo se enfoca en estudiar las bases o fundamentos para desarrollar un sistema de
visión artificial. Si bien, innovar casi siempre ha resultado ser el camino al éxito, no siempre
se tiene que innovar para poder trascender, basta con aportar una mejora pequeña y a pesar
de ser pequeña puede ser significativa, por ello se debe conocer que existió, existe y existirá,
(esto último en el futuro cercano claro) para nutrir lo más que se puede a nuestro proyecto.
La aplicación de la visión artificial tiene un sinfín de áreas, tales como la robótica, la médica,
la de control, la industrial, etc.
Para poder empezar a hablar de lo que es la visión artificial (Rojas, Silva, Molina, 2007)
primero habrá que definir lo que es. La visión artificial es aquella que emula la vista a través
de una computadora, que dota a un sistema de cómputo de ese sentido, es evidente que será
un proceso digital y que los resultados obtenidos a partir de este proceso deben ser superiores
a los humanos.
Ortigoza, Ruiz, Caballero y Kussul (2009) estudiaron una de las aplicaciones más
interesantes de esta tecnología en el área médica. Debido a la complejidad que compone el
ser humano es imposible poder recrearlo de manera precisa, sin embargo, se pueden
desarrollar atributos individuales e implementarlos en el cuerpo humano, por ejemplo, un
sistema de visión artificial en personas ciegas. Se puede implementar un sistema capaz tomar
imágenes del exterior y recrear patrones de puntos que reconstruyen una imagen, esta imagen
no solo se reconstruye a manera de patrón, sino que se transmite a una malla implantada en
la cabeza del invidente para generar una serie de pulsos que le bridan una noción bastante
general del entorno que lo rodea.
KINECT
Se trata de un dispositivo desarrollado por Microsoft para su videoconsola Xbox 360, el cual
permite a los programadores implementar aplicaciones capaces de reconocer gestos y
emplear comandos mediante la voz.
El dispositivo Kinect está diseñado para poder localizarlo encima o debajo del monitor o del
televisor con el que se interactuará. Kinect tiene una composición horizontal en la que se
albergan:
 Una cámara RGB que proporciona una resolución VGA (Video Graphics Adapter)
de 8 bits (640x480).
 Un sensor de profundidad monocromo de resolución VGA de 11 bits que proporciona
211 = 2048 niveles de sensibilidad.
 Un array de cuatro micrófonos.
El sensor de profundidad consiste en una combinación de un laser infrarrojo y un sensor
monocromo CMOS (Complementary Metal-Oxide-Semiconductor) de infrarrojos. Esto le
permite capturar video 3D bajo cualquier tipo de luz ambiental. El láser infrarrojo se proyecta
sobre cada uno de los objetos que se encuentre a su alcance. El sensor recibe el infrarrojo
reflejado por los objetos. Analizando las longitudes de onda de la señal reflejada, el
dispositivo calcula la distancia a la que se encuentran los objetos. Kinect cuenta además con
un motor en su base, el cual le permite modificar su inclinación. Además dispone de una
conexión USB (Universal Serial Bus), gracias a la cuál es posible comunicarnos con él e
implementar aplicaciones que manipulen los datos que proporciona. Desde el punto de vista
de la programación, Kinect cuenta con un API desarrollada por Microsoft capaz de realizar
detección y seguimiento de objetos –como cuerpo, cabeza, manos–, identificación de gestos,
etc. Además, desde su aparición, tanto la liberación por parte de PrimeSense del código de
los drivers del sensor de profundidad, como la labor de ingeniería inversa desarrollada por
algunas comunidades, han permitido que los desarrolladores puedan implementar APIs con
las que poder manipular el dispositivo Kinect empleando alternativas libres (Jurado Monroy,
Albusac Jiménez and Castro Sánchez, 2013).
Tecnología CMOS
Un Active Píxel Sensor (APS) es un sensor que detecta la luz basado en tecnología CMOS y
por ello es más conocido como sensor CMOS. Gracias a esta tecnología de construcción es
posible integrar más funciones en un chip sensor, tales como control de luminosidad,
corrección de contraste, conversión analógico-digital, etc. El APS, al igual que el sensor
CCD, se basa en el efecto fotoeléctrico, ya que está formado por numerosos fotodiodos, uno
para cada píxel, que producen una corriente eléctrica que varía en función de la intensidad
de luz recibida. En el CMOS, a diferencia del CCD, se incluye un conversor digital en el
propio chip y se incorpora un amplificador de la señal eléctrica en cada fotodiodo mientras
que en un CCD se tiene que enviar la señal eléctrica producida al exterior y amplificarla.
Antecedentes
Ya en 1939, cuando el grupo General Motors montó la exposición “Futurama”, en el marco
de la Exposición Universal de Nueva York, el diseñador Norman Bel Geddes, había
imaginado autopistas o coches teledirigidos que circulaban a gran velocidad y con toda
seguridad. Más tarde en 1958, el mismo grupo testaba en la autopista, el prototipo “Firebirdd
III”, que disponía de un piloto automático, capaz de seguir un cable colocado bajo el
pavimento. En 1984, el alemán Ernst Dickmanns de la Universidad de Munich y sus equipos,
hicieron circular a 96 km/h en una autopista desierta, una furgoneta Mercedes-Benz sin
ninguna intervención humana. En Francia, I’ INRIA presentó en 1996 un prototipo, el
“CyCab”, para ilustrar el potencial de la robótica en los desplazamientos urbanos
(CETELEM, 2016).
En 1969, John McCarthy, conocido como uno de los padres de la inteligencia artificial,
describe algo similar al vehículo autónomo moderno en un ensayo titulado “Computer
Controlled Cars“. McCarthy se refiere a un “chófer automático”, capaz de navegar por una
vía pública a través de una “entrada de cámara de televisión que usa la misma entrada visual
disponible para un controlador humano”; a principios de 1990, el investigador de Carnegie
Mellon, Dean Pomerleau, escribe una tesis doctoral que describe cómo las redes neuronales
podrían permitir que un vehículo autónomo captara imágenes en bruto de la carretera,
enviando órdenes a los controles de dirección en tiempo real. Pomerleau no es el único
investigador que trabaja en carros autodirigidos, pero su uso de redes neuronales demuestra
ser mucho más eficiente que los intentos alternativos de dividir manualmente las imágenes
en categorías “viales” y “no viales”. En 1995, Pomerleau y su colega investigador, Todd
Jochem, llevan su sistema de auto-conducción Navlab a la carretera. Su minivan autónoma
(ellos tienen que controlar la velocidad y el frenado) recorre 2,797 millas de costa a costa,
desde Pittsburgh, Pennsylvania hasta San Diego, California, en un viaje que la pareja llama
“No Hands Across America”, Sin Manos A Través de América (Matus, 2017).
Es a partir del año 2000 cuando este tema se acelera: las investigaciones han progresado
notablemente y en particular en Estados Unidos, cuando DARPA (Defense Advanced
Research Projects Agency) elige organizar dos carreras, en 2004-2005 y después en 2007,
con una recompensa extraordinaria para el que consiguiera hacer circular durante una
distancia concreta, un coche sin ninguna intervención humana. Es en estas carreras donde
toman parte los primeros prototipos de coches inteligentes sin piloto. El premio “Grand
Challenge” de 2005 lo ganó un laboratorio de búsqueda electrónica de la Universidad de
Stanford a la que pertenecía el futuro director de investigación del proyecto Google. Su
prototipo, el Volkswagen Touareg Stanley, recorrió 212 km en el desierto con total
autonomía (CETELEM, 2016).
Para 2013, las principales compañías automotrices, incluidas General Motors, Ford,
Mercedes Benz, BMW y otras, están trabajando en sus propias tecnologías autónomas.
Nissan se la juega incluso con una fecha, al anunciar que lanzará varios autos sin conductor
para el año 2020.
ARROYO SÁNCHEZ, (2013) obtuvo un método de SLAM que pueda ser usado en el
sistema de navegación a bordo de un robot de búsqueda y rescate. Para lograr esto se
exploraron varias técnicas, desde el uso de tecnologías de última generación como el sensor
Kinect hasta nuevos y poderosos algoritmos computacionales.
Carrillo & Ortega, en 2015, publican un artículo en donde introducen modelos matemáticos
para controlar el comportamiento de vehículos en un mundo virtual; estos comportamientos
consideran dos situaciones: 1) en toma de curvas, donde la complejidad es resultado de
mantener al vehículo a una velocidad segura durante la toma de la curva y dentro del carril y
2) de seguimiento vehicular, donde es esencial mantener una distancia segura entre los
vehículos, así como evitar que el vehículo seguidor quede rezagado con respecto al líder.
Usando información básica sobre la posición de los vehículos se desarrollan modelos
matemáticos que explican el ángulo de dirección y la velocidad en curvas de vehículos
autónomos. Desarrollaron un modelo para predecir la velocidad del vehículo autónomo en
curvas considerando datos previos en otras curvas. Se propusieron dos modelos para
controlar el comportamiento para acelerar y desacelerar de los vehículos autónomos en
situaciones de seguimiento de coche, el primer modelo se calibra con un algoritmo propuesto
y asemeja el comportamiento humano para acelerar y frenar, el segundo proporciona una
distancia segura para evitar colisiones cuando el líder frena repentinamente, además emplea
la máxima capacidad para acelerar y desacelerar del vehículo autónomo y asemeja el
comportamiento humano.
Cárdenas, Gómez & Martínez (2016), desarrollaron un asistente robótico que permite ayudar
a las personas con discapacidad visual a desplazarse en un entorno cerrado desconocido.
Basado en técnicas confiables para realizar el proceso de Localización y Mapeado
Simultáneo o SLAM (del inglés Simultaneus Localization And Mapping); el robot crea un
mapa del entorno y es capaz de navegar por el mismo a partir de los algoritmos desarrollados.
Adicionalmente el robot puede conectarse e interactuar con cualquier terminal Android lo
que permite al usuario comunicarse directamente con el robot de forma inalámbrica y dar las
órdenes necesarias para que el asistente acuda al llamado del usuario; el funcionamiento del
robot está basado en un framework de tipo open source que cuenta con innumerables
herramientas y librerías que facilitan de gran manera la labor de desarrollar software de
interpretación robótica en lenguajes de programación básicos como C++, Python y Java.
Sistema Operativo Robótico o ROS (del inglés Robot Operating System) cuenta con una
comunidad de desarrolladores por todo el mundo que dan gran soporte a la plataforma y
solventan de muy buena manera las inquietudes presentadas por otros desarrolladores, siendo
esta una ventaja del software de tipo open source.
En esta propuesta se diseña el robot llamado Vitour, que desempeña la tarea de construir
mapas haciendo uso de la técnica de SLAM con las imágenes captadas por el sensor Kinect
que se instala en el mismo. Por otra parte, el robot es incapaz de crear el mapa de manera
autónoma, es decir que el asistente es controlado remotamente desde un terminal Android
para la fabricación del mapa. Los resultados tienen gran acierto y brindan una información
fiable sobre la cual es posible trabajar la etapa posterior de navegación. (Cárdenas, Gómez
& Martínez, 2016).
Metodología
Para el desarrollo de este proyecto se usará la metodología VD1 2221 mostrada en la figura
1.

Figura 1. Modelo de diseño del proceso VD1 2221 para la realización del proyecto.
Cronograma de actividades
Cronograma de actividades
Semanas
Mes Enero Febrero Marzo Abril Mayo
Actividades 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3
Definir proyecto
Definir problemática
Definir la justificacion del proyector
Definir el objetivo del proyecto
Definir el alcance del proyecto
Definir la metodologia del proyecto
Realizar el cronogama de actividades
Definir el modelo dinamico
Simular modelo
Familiarización con la programacion del kinect
Identificacion obstaculos
Trazado de trayectorias
Algoritmo para desarrollar trayectoria
Algoritmos para evación de objetos
Validacion de funcionamiento
Generación de artículo

Fig.2. Cronograma de actividades.


Desarrollo
1. Modelo cinemático
La configuración de las ruedas del robot móvil es una tracción diferencial de dos ruedas con
dos puntos de contacto adicionales (ver Fig. 1) que le sirven de estabilidad a la estructura
física del robot.

Figura 1. Configuración de las ruedas de un robot móvil con tracción diferencial con dos puntos de contacto
de apoyo.
Fuente: Siegwart, R. and Nourbakhsh, I. (2004). Introduction to autonomous mobile robots. Cambridge,
Mass.: MIT Press, p.35.

Se considera el movimiento de rodadura de la rueda en la dirección del eje x y el el eje de


rotación de la rueda en el eje y.

Figura 2. Vista superior de una rueda giratoria idealizada. Para una rueda que gira alrededor del eje y, el
movimiento a lo largo del eje x.
Fuente: Siegwart, R. and Nourbakhsh, I. (2004). Introduction to autonomous mobile robots. Cambridge,
Mass.: MIT Press, p.35.///cambiar
𝑹

Figura 3. Cinemática de accionamiento diferencial. Un robot de accionamiento diferencial controla su


postura al proporcionar control de velocidad independiente a las ruedas izquierda (𝑣𝑙 ) y derecha (𝑣𝑟 ).

Bajo el accionamiento diferencial, para que cada una de las dos ruedas motrices muestre un
movimiento de rodadura, el robot debe girar alrededor de un punto que se encuentra en el eje
común de las dos ruedas motrices. Al variar la velocidad relativa de las dos ruedas, se puede
variar el punto de esta rotación y elegir las diferentes trayectorias del vehículo. En cada
instante en el tiempo, el punto en el que el robot gira debe tener la propiedad de que las ruedas
izquierda y derecha siguen un camino que se mueve alrededor del ICC (Centro Instantáneo
de Curvatura) con la misma velocidad angular 𝜔, y por lo tanto

𝜔(𝑅 + 𝑙/2) = 𝑣𝑟 ~(1)


𝜔(𝑅 − 𝑙/2) = 𝑣𝑙 ~(2)

Donde 𝑙 es la distancia a lo largo del eje entre los centros de las dos ruedas, la rueda izquierda
se mueve con la velocidad 𝑣𝑙 a lo largo del suelo y la derecha con velocidad 𝑣𝑟 , y 𝑅 es la
distancia señalada del ICC al punto medio entre las dos ruedas. 𝑣𝑙 , 𝑣𝑟 , 𝜔 y 𝑅 son todas
funciones del tiempo. En cualquier instante en el tiempo, resolviendo para 𝑅 y 𝜔 resulta en

𝑙 𝑣𝑙 + 𝑣𝑟
𝑅= ( ) ~(3)
2 𝑣𝑟 − 𝑣𝑙
𝑣𝑟 − 𝑣𝑙
𝜔= ~(4)
𝑙

Si se discretizan dos casos especiales tal que, si 𝑣𝑙 = 𝑣𝑟 , entonces el radio 𝑅 es infinito, y el


robot se mueve en línea recta; si 𝑣𝑙 = − 𝑣𝑟 , entonces el radio es cero, y el robot gira alrededor
de un punto al centro del eje de las dos ruedas, es decir, gira en su lugar. Para otros valores
de 𝑣𝑙 y 𝑣𝑟 , el robot no se mueve en línea recta sino que sigue una trayectoria curva alrededor
de un punto a una distancia 𝑅 desde el centro del robot, cambiando tanto la posición como la
orientación del robot.
La estructura cinemática del vehículo prohíbe ciertos movimientos del vehículo. Por ejemplo,
no existe una combinación de 𝑣𝑙 y 𝑣𝑟 tal que el vehículo pueda moverse directamente a lo
largo del eje común de las ruedas.
Supongamos que el robot está en alguna posición (𝑥, 𝑦) y "mirando" a lo largo de una línea
formando un ángulo 𝜃 con el eje 𝑥 (ver Fig. 3). Mediante la manipulación de los parámetros
de control 𝑣𝑙 y 𝑣𝑟 , se puede hacer que el robot adopte diferentes poses. La determinación de
la pose que es alcanzable dados los parámetros de control se conoce como el problema de la
cinemática directa para el robot. Como 𝑣𝑙 y 𝑣𝑟 y por lo tanto 𝑅 y 𝜔 son funciones del tiempo,
es sencillo mostrar (ver Figura 3.8) que si el robot tiene pose (𝑥, 𝑦, 𝜃) en algún momento 𝑡,
y si las ruedas izquierda y derecha tienen las velocidades de contacto con el suelo 𝑣𝑙 y 𝑣𝑟 ,
respectivamente, durante el período 𝑡 → 𝑡 + 𝛿𝑡, entonces el ICC está dado por

𝐼𝐶𝐶 = (𝑥 − 𝑅 ∗ 𝑠𝑒𝑛(𝜃), 𝑦 + 𝑅 ∗ 𝑐𝑜𝑠(𝜃))~(5)

y en el tiempo 𝑡 + 𝛿𝑡 la pose del robot está dada por


𝑥′ cos 𝜔𝛿𝑡 − sin 𝜔𝛿𝑡 0 𝑥 − 𝐼𝐶𝐶𝑥 𝐼𝐶𝐶𝑥
[𝑦′] = [ sin 𝜔𝛿𝑡 cos 𝜔𝛿𝑡 0] [𝑦 − 𝐼𝐶𝐶𝑦 ] + [𝐼𝐶𝐶𝑦 ] ~(6)
𝜃′ 0 0 1 𝜃 𝜔𝛿𝑡
La ecuación (6) describe el movimiento de un robot girando una distancia 𝑅 sobre su 𝐼𝐶𝐶
con una velocidad angular dada por 𝜔.
Integrando (6) desde alguna condición inicial (𝑥0 , 𝑦0 , 𝜃0 ), es posible calcular dónde estará
el robot en cualquier momento 𝑡 en base a los parámetros de control 𝑣𝑙 (𝑡) y 𝑣𝑟 (𝑡), es decir,
a resolver el problema de la cinemática directa para el vehículo. En general, para un robot
capaz de moverse en una dirección particular 𝜃(𝑡) a una velocidad dada 𝑉(𝑡)
𝑡
𝑥(𝑡) = ∫ 𝑉(𝑡) cos(𝜃(𝑡)) 𝑑𝑡 ~(7)
0
𝑡
𝑦(𝑡) = ∫ 𝑉(𝑡) sin(𝜃(𝑡)) 𝑑𝑡 ~(8)
0
𝑡
𝜃(𝑡) = ∫ 𝜔(𝑡)𝑑𝑡 ~(9)
0

y para el caso de un vehículo de accionamiento diferencial


1 𝑡
𝑥(𝑡) = ∫ (𝑣𝑟 (𝑡) + 𝑣𝑙 (𝑡)) ∗ cos(𝜃(𝑡)) 𝑑𝑡 ~(10)
2 0

1 𝑡
𝑦(𝑡) = ∫ (𝑣𝑟 (𝑡) + 𝑣𝑙 (𝑡)) ∗ sin(𝜃(𝑡)) 𝑑𝑡 ~(11)
2 0
1 𝑡
𝜃(𝑡) = ∫ (𝑣 (𝑡) − 𝑣𝑙 (𝑡)) 𝑑𝑡 ~(12)
𝑙 0 𝑟
Bibliografía
CETELEM (2016). El coche autónomo. Los conductores, dispuestos a ceder la conducción
a la tecnología. El Observatorio Cetelem. [en línea] Madrid: CETELEM, pp.22-23.
Disponible en: https://elobservatoriocetelem.es/ [Accesado 2 Feb. 2018].
Matus, D. (2017). La historia de los carros autónomos contada en unos pocos hitos. [Blog]
DIGITAL TRENDS ES. Available at: https://es.digitaltrends.com/autos/historia-carros-
autonomos/ [Accesado 2 Feb. 2018].
Rojas Hernández, Rogelio; Silva Ortigoza, Ramón; Molina Vilchis, María Aurora “La Visión
Artificial en la Robótica” Polibits, núm. 35, 2007, pp. 22-28 Instituto Politécnico Nacional
Distrito Federal, México
Ortigoza-Ayala, Luis Octavio; Ruiz-Huerta, Leopoldo; Caballero-Ruiz, Alberto; Kussul,
Ernst Visión artificial en el humano Revista Médica del Instituto Mexicano del Seguro
Social, vol. 47, núm. 4, 2009, pp. 393- 398 Instituto Mexicano del Seguro Social Distrito
Federal, México.
Jurado Monroy, F., Albusac Jiménez, J. and Castro Sánchez, J. (2013). Desarrollo de
Videojuegos. Desarrollo de Componentes. 2nd ed. Real, España: Universidad de Castilla La
Mancha, pp.236-237.
Arroyo Sánchez, G. (2013). Localización y mapeo simultáneos para robot de búsqueda en
entornos de desastre. Maestría. Universidad nacional autónoma de México.
Cárdenas Caicedo, J., Gómez Arciniegas, J. & Martinez Bedoya, C. (2016). Asistente
robótico para personas con discapacidad visual. Ingeniería. Fundación Universitaria Los
Libertadores Facultad de Ingenierías.
Carrillo-González, José Gerardo, Ortega-Magaña, Ricardo, Arámburo-Lizárraga, Jesús,
Modeling the Turning Speed and Car Following Behaviors of Autonomous Vehicles in a
Virtual World. Ingeniería. Investigación y Tecnología [en linea] 2015, XVI (Julio-
Septiembre): [Fecha de consulta: 2 de febrero de 2018] Disponible
en:<http://www.redalyc.org/articulo.oa?id=40440683007> ISSN 1405-7743
Bourdon, Gerard, Ruaux, Pascal and Delaplace, Stephane, Instantaneous Fuzzy Modelling
for Obstacles Avoidance, Systems, Man and Cybernetics. Intelligent Systems for the 21 st
Century, IEEE International Conference, 22-25 Oct 1 995, Vancouver, BC, Canada.
Cross, N. (2007). Engineering design methods. 3rd ed. Chichester: Wiley, pp.28-42.
Siegwart, R. and Nourbakhsh, I. (2004). Introduction to autonomous mobile robots.
Cambridge, Mass.: MIT Press, p..

Вам также может понравиться