viernes, 17 de febrero de 2012

El ojo tuno

Para evitar que el robot se caiga por los escalones voy a tener que añadirle al montaje un sensor adicional para 'mirar' el suelo. Vamos, que voy a tener que instalarle un 'ojo tuno'.


El sensor sólo deberá mirar que haya suelo bajo el robot. Decido utilizar un sensor de proximidad por infrarrojos, que será más asequible que los de ultrasonidos y además el rango de distancias a medir es más cortito.


El Sharp GP2D120 tiene un rango de medida de 4 a 30 centímetros. Yo creo que servirá.
Lo colocaré en la parte delantera, enfocando al suelo y midiendo cada vez que se mire si hay obstáculos delanteros. Si la distancia al suelo aumenta por encima de un umbral consideraré que hay obstáculo y haré que el robot reaccione deteniendo el avance y forzando una maniobra de giro.

martes, 7 de febrero de 2012

Estrategia del caracol

Los giros serán maniobras sucesivas de alejamiento y aproximación al obstáculo en ángulos de unos 8 o 10 grados.
En el vídeo de la entrada anterior se puede ver cómo se enfrenta el robot a un obstáculo:
  1. Detecta el obstáculo mediante el sensor frontal.
  2. Lo intenta esquivar con una primera maniobra.
  3. El sensor frontal sigue detectando el obstáculo por lo que realiza otra maniobra.
  4. Un vez superados los 15 grados, el sensor frontal deja de detectar el obtáculo (ver diagrama de sensibilidad del sensor )  El sensor lateral todavía está lejos por lo que se reanuda el avance.
  5. El sensor lateral detecta el obstáculo. Realiza otra maniobra.
  6. En el siguiente avance, el sensor lateral vuelve a detectar el obstáculo y repite la maniobra hasta que supera el obstáculo.


El recorrido óptimo para economizar en los giros y no hacer pasadas innecesarias es el recorrido en espiral.

Voy a intentar implementar un algoritmo que detecte el contorno de la zona a recorrer y luego lo recorra en espiral. Mi área de trabajo no será tan compleja como la del dibujo así que no me complicaré en exceso.