Robot esquiva objetos

Hola somos Carlos y Richi, del IES Burguillos de Sevilla,  hemos hecho un proyecto de un robot que esquiva objetos basado en  el microcontrolador Arduino y en sensores de distancias usando servomotores de rotación continua.

Para realizar el proyecto nos hemos ayudado del libro: «Computación Física en Secundaria«.

Para hacer el proyecto primero hemos hecho el diseño de la parte mecánica. Luego hemos realizado el hardware necesario para que funcionen los sensores y actuadores con arduino. El sensor de distancia usado es el Sharp GP2Y0A02YK que funciona en un rango de 20 a 150cm. Los motores usados son Servomotores de rotación continua.

HARDWARE:

SOFTWARE:

Finalmente nos hemos encargado de realizar el software para el funcionamiento del robot. Antes de cargar el programa final a arduino, hemos realizado los programas por partes.

Primero realizamos el de los sensores de distancia y probamos que funcionaban correctamente, y cogimos los valores medidos por el sensor de distancia. Programa de funcionamiento de los sensores.

Luego realizamos el programa de los motores con cuatro rutinas adelante, derecha, izquierda y atras y tambien lo probamos para ver si funcionaban correctamente. Programa de funcionamiento de los motores.

Una vez que teníamos estos dos programas hechos, realizamos el programa final, el cuál, era el resultado de fusionar ambos programas en uno.

Programa de control del robot.

Funcionamiento del software: Para realizar el software nos hemos basado en cuatro rutinas adelante, atras, izquierda y derecha que accionan los motores. Estas rutinas estan controladas por las señales de los sensores de distancia, si no detectan ningun objeto el vehiculo sigue adelante, si detecta un objeto a la derecha gira a la izquierda, y sino al contrario. Si los dos sensores detectan un objeto gira marcha atras.

Aqui podeis ver un vídeo de su funcionamiento:

33 respuestas a “Robot esquiva objetos

  1. Juan Pedro Gallardo 6 febrero 2012 / 16:32

    Muy interesante el proyecto.
    Me podrían proporcionar los esquemas de conexiones y el programa?. Estaría muy interesado en repetirlo en casa.

    Gracias y enhorabuena

    Me gusta

      • VanessaO 18 junio 2012 / 5:51

        Hola! Me podrían ayudar con el circuito del carrito? O es sólo la parte que viene ahí de Hardware? Necesita más componentes, como transistores o algo así?

        Está muy interesante! Gracias

        Me gusta

      • josepujol 18 junio 2012 / 9:06

        Hola Vanessa! El circuito es el que viene en los esquemas, son unos pequeños servomotores de rotación continua que se conectan directamente sin necesidad de un circuito de potencia
        Un saludo y gracias!

        Me gusta

  2. ewin2m 17 abril 2012 / 20:17

    esos motores son servomoteres standar o continuos

    Me gusta

  3. DiegoGzP 23 septiembre 2012 / 16:49

    Hola, me ha gustado mucho su proyecto y me gustaría hacer algo muy parecido para mi curso de electrónica. ¿Podrían decirme cómo han alimentado todo el circuito? Sé que es con una bateria por el video, pero me gustaría saber el voltaje, etc. Gracias de antemano

    Me gusta

    • josepujol 24 septiembre 2012 / 8:23

      Hola!
      El robot está controlado por una placa de Arduino alimentada por una pila de 9v
      Un saludo

      Me gusta

  4. Rodrigo 3 junio 2013 / 20:24

    me podrías pasar un diagrama de las conexiones del arduino a los motores y los sensores por favor?

    Me gusta

  5. Rodrigo 4 junio 2013 / 23:40

    Disculpe mi ignorancia pero no entiendo muy bien la imagen, sería tan amable de explicarmela por favor?

    Me gusta

    • josepujol 5 junio 2013 / 7:30

      Sí claro

      El sensor de distancia tienes tres cables, uno rojo que va a 5v, uno negro a 0v=GND, y uno amarillo a analógico

      El servomotor tiene también tres cables, el rojo a 5v, el negro a 0v y el blanco a un pin digital

      Un saludo José Pujol

      Me gusta

      • Rodrigo 5 junio 2013 / 20:05

        Me podrías enviar fotos del arduino y de las conexiones a los motores y sensores que realizaste, poque toda via no lo entiendo muy bien por favor.
        Saludos.

        Me gusta

      • Rodrigo 5 junio 2013 / 20:19

        Que quiere decir Vcc en la foto de las conexiones, y por qué el cable qu dice GND, tiene 3 cables (según la foto de las coexiones).
        Me podrias explicar esto por favor.
        Saludos, Muchas gracias

        Me gusta

      • josepujol 5 junio 2013 / 21:15

        Vcc es 5v, y tanto el servomotor como el sensor de distancia van conectados a 5v y a GND=0v

        ________________________________

        Me gusta

  6. Rodrigo 6 junio 2013 / 4:26

    Entonces las unicas conexiones que llevan en cada uno son: 5v, GND, los sensores a pines anlógicos y los motores a pines digitales.
    El arduino va conectado a una pila que alimenta a los motores y los sensores?
    Muchas gracias, saludos

    Me gusta

      • Rodrigo 11 junio 2013 / 6:01

        Con que los puedo conectar si en el arduino solo hay un pin de 5v y 2 pines de GND y segun la imagen necesito conectar 4 a 5v y 4 a GND, como le puedo hacer para conectarlo todo?

        Me gusta

      • josepujol 11 junio 2013 / 6:06

        Sí te fijas en la imagen hay una placa de montaje rápido, encima del arduino, lo puedes hacer con una protoboard tambien

        Un saludo José Pujol

        Me gusta

  7. Rodrigo 11 junio 2013 / 22:22

    Los servomotores que usaste son 360 grados?
    En dónde conseguiste las ruedas?

    Me gusta

    • josepujol 12 junio 2013 / 18:49

      Si los servos son 360 grados, las ruedas las reutilizamos, pero en hay muchos sitios de venta online

      Me gusta

  8. Rodrigo 25 junio 2013 / 6:16

    Todo el robot está alimentado por una pila que va conectada al arduino y eso hace funcionar a todo el robot o utiliza otra o diferente fuente de alimentación?
    Saludos y gracias 🙂

    Me gusta

  9. Rodrigo 28 junio 2013 / 3:35

    Los motores que utilizaste son servomotores de rotación continua 360 grados 15k?
    O cuales?
    Gracias

    Me gusta

    • josepujol 28 junio 2013 / 14:04

      Son servos continuos, pero la verdad es que no se decirte ahora mismo que modelo son

      Me gusta

  10. Omar9 13 agosto 2013 / 14:15

    hola…
    Me intereso mucho tu proyecto y mi duda es que si puedo ocupar cualquier versión del arduino??

    o que versión me recomiendas…

    Me gusta

  11. Caroltecno 1 octubre 2015 / 18:18

    Hola,
    Entiendo el cableado pero no la parte mecánica. Como se conecta el servo al eje de ruedas? Donde puede comprarse ese servo?

    Me gusta

    • josepujol 1 octubre 2015 / 18:26

      Hola Carol

      Las ruedas se conectan al servo directamente
      Los servos continuos se pueden comprar en muchas tiendas online de robótica, yo concretamente compro en Leantec.es

      Espero que te sirva

      Me gusta

    • josepujol 1 octubre 2015 / 18:26

      Hola Carol

      Las ruedas se conectan al servo directamente
      Los servos continuos se pueden comprar en muchas tiendas online de robótica, yo concretamente compro en Leantec.es

      Espero que te sirva

      Me gusta

Deja un comentario