Inicio » Aula » Robot Tobby

Robot Tobby

En esta entrada explicaré cómo realizar un robot controlado por Bluetooth, mediante una aplicación diseñada en la web Mi app Inventor.

Las funciones diseñadas para mi robot son las siguientes:

  1. Control remoto
  2. Sigue líneas
  3. Evita obstáculos
  4. Acelerómetro
  5. Seguidor de luz

 

DISEÑO

La estructura del robot se basa en una estructura tipo triciclo con dos ruedas fijas y una rueda loca en este caso posicionada en la parte trasera. He comprado una base la cual es genérica y se puede encontrar en muchas tiendas online. Además, he incluido un diseño realizado mediante AutoCAD y cortado mediante corte láser, para poder cubrir el circuito y darle un toque personal.

Chasis del robot

Una vez elegido el diseño, se basa en elegir los componentes a utilizar. En este caso, los componentes usados son los siguientes;

  • Sensor de ultrasonidos HC-SR04
  • Baterías de Litio de 3.7 V x2
  • SG90 Servo
  • Módulo Bluetooth HC-05
  • Sensor TCTR5000 x2
  • Sensor fotosensible KY-018 x2
  • Sensor infrarrojo evita obstáculos x2
  • Placa Arduino UNO R3 CH340
  • Motor Driver Shield
  • Motores DC x2

FUNCIONES

Sigue líneas

Para esta función autónoma, he implementado un sistema sencillo pero seguro. He usado los dos sensores TCTR5000 los cuales de forma digital van leyendo el color del suelo diferenciando entre el blanco y el negro » digitalRead() «. Según lo que lean estos sensores se realizará una acción u otra. (Teniendo en cuenta que al valor negro le hemos dado el valor 1).

VIDEO DEMOSTRATIVO: https://youtube.com/shorts/iVSK24ZplAo

 

Evita Obstáculos

Para la siguiente función autónoma, he involucrado a dos tipos de sensores. El sensor de ultrasonidos HC-SR04 y los dos sensores infrarrojos. El sistema está basado en la unión de varias funciones diseñadas.

  • Primero he diseñado la función que se encarga de medir la distancia del sonar mediante la función «float distancia = pulseIn(13, HIGH)*0.034/2».
    • pulseIn(13, HIGH): Esta función mide la duración del pulso en el pin 13 mientras está en estado ALTO (HIGH). Es decir, el tiempo que tarda en recibir el eco una vez enviado.
    • 0.034: 0.034 centímetros por microsegundo es la velocidad del sonido.
    • /2: Ya que medimos ida y vuelta debemos dividirlo entre dos.
  • Seguidamente, he realizado la función que elige el camino, para ello muevo el servo hacia una dirección y hacia la otra, y entre proceso utilizo la función diseñada anteriormente que mide la distancia.
  • A continuación, diseñamos la función de evitar obstáculos mediante la utilización del sonar.
  • Por último, diseñamos la función de evitar obstáculos mediante la utilización de los infrarrojos.

Una vez diseñado todo esto, se realiza la función final que engloba la utilización de ambos sensores.

VIDEO DEMOSTRATIVO: https://youtube.com/shorts/K8NRPuDE9LU

 

Control remoto

Para el modo de control remoto, lo que he realizado es que dependiendo del valor que mandemos por el control bluetooth se realice el movimiento deseado.

Control Remoto Mi app Inventor

 

VIDEO DEMOSTRATIVO: https://youtu.be/UXiy-aAoRa4

 

Acelerómetro

Para la esta función hemos utilizado los videos que nos proporciona nuestro profesor de la asignatura Leopoldo Armesto Ángel. Estos videos son los siguientes:

VIDEO EXPLICACIÓN TEÓRICA: https://www.youtube.com/watch?v=sS2RH4GoxQM

VIDEO ORIENTADO A LA IMPLEMENTACION EN MI App Inventor: https://www.youtube.com/watch?v=fBEZSXJPUh0

Una vez entendido esto solo necesitamos aplicarlo a nuestro uso, en este caso el movimiento del robot.

 

VIDEO DEMOSTRATIVO: https://youtube.com/shorts/-NjtXyJ49sg

 

Seguidor de luz

Para el desarrollo de esta función hemos utilizado los sensores KY-018. Con ellos lo que realizamos es enfocar a ellos con la luz, si ven oscuridad te devuelven un valor alto y si detectan luz ese valor baja. Para el control de giro lo que he realizado ha sido una división de tal manera que si el sensor izquierdo obtiene menos valor que el derecho se realiza la división del valor pequeño entre el valor grande, quedándote un valor inferior a 1 el cual va a multiplicar a la rueda del sensor que mas luz detecta ya que queremos que gire hacia ese lado.

 

VIDEO DEMOSTRATIVO: https://youtube.com/shorts/nDYEli_hLv8

 

APLICACIÓN PARA EL MANEJO DE FUNCIONES

Mediante la pagina de Mi app Inventor he desarrollado una aplicación la cual cuenta con la siguiente interfaz.

Pantalla Principal

Mediante esta pantalla podemos acceder a la conexión bluetooth, y una vez nos conectemos podemos acceder a los distintos modos seleccionados. En cada uno de los modos tenemos una opción de parada y de inicio, para así poder controlar totalmente el robot sin tener que volver a la pantalla principal.
Esta aplicación esta diseñada toda en una misma pantalla debido al error que daba el bluetooth al cambiar de pantalla, así que para solucionarlo diseñé toda la aplicación en una única pantalla, haciendo visibles e invisibles los elementos dependiendo del botón pulsado o del estado en el que se encuentre.

Aquí os dejo una pequeña muestra de los bloques realizados en Mi App Inventor;

 

Muestra de los bloques de la app

 

Como se observa una interfaz dentro de un modo:

 

Ventana del Seguilineas

 

Muchas gracias por llegar hasta aquí, espero haberte ayudado.

Entrada realizada por Hugo García García.En esta entrada explicaré cómo realizar un robot controlado por Bluetooth, mediante una aplicación diseñada en la web Mi app Inventor.

Las funciones diseñadas para mi robot son las siguientes:

  1. Control remoto
  2. Sigue líneas
  3. Evita obstáculos
  4. Acelerómetro
  5. Seguidor de luz

 

DISEÑO

La estructura del robot se basa en una estructura tipo triciclo con dos ruedas fijas y una rueda loca en este caso posicionada en la parte trasera. He comprado una base la cual es genérica y se puede encontrar en muchas tiendas online. Además, he incluido un diseño realizado mediante AutoCAD y cortado mediante corte láser, para poder cubrir el circuito y darle un toque personal.

Chasis del robot

Una vez elegido el diseño, se basa en elegir los componentes a utilizar. En este caso, los componentes usados son los siguientes;

  • Sensor de ultrasonidos HC-SR04
  • Baterías de Litio de 3.7 V x2
  • SG90 Servo
  • Módulo Bluetooth HC-05
  • Sensor TCTR5000 x2
  • Sensor fotosensible KY-018 x2
  • Sensor infrarrojo evita obstáculos x2
  • Placa Arduino UNO R3 CH340
  • Motor Driver Shield
  • Motores DC x2

FUNCIONES

Sigue líneas

Para esta función autónoma, he implementado un sistema sencillo pero seguro. He usado los dos sensores TCTR5000 los cuales de forma digital van leyendo el color del suelo diferenciando entre el blanco y el negro » digitalRead() «. Según lo que lean estos sensores se realizará una acción u otra. (Teniendo en cuenta que al valor negro le hemos dado el valor 1).

 

Evita Obstáculos

Para la siguiente función autónoma, he involucrado a dos tipos de sensores. El sensor de ultrasonidos HC-SR04 y los dos sensores infrarrojos. El sistema está basado en la unión de varias funciones diseñadas.

  • Primero he diseñado la función que se encarga de medir la distancia del sonar mediante la función «float distancia = pulseIn(13, HIGH)*0.034/2».
    • pulseIn(13, HIGH): Esta función mide la duración del pulso en el pin 13 mientras está en estado ALTO (HIGH). Es decir, el tiempo que tarda en recibir el eco una vez enviado.
    • 0.034: 0.034 centímetros por microsegundo es la velocidad del sonido.
    • /2: Ya que medimos ida y vuelta debemos dividirlo entre dos.
  • Seguidamente, he realizado la función que elige el camino, para ello muevo el servo hacia una dirección y hacia la otra, y entre proceso utilizo la función diseñada anteriormente que mide la distancia.
  • A continuación, diseñamos la función de evitar obstáculos mediante la utilización del sonar.
  • Por último, diseñamos la función de evitar obstáculos mediante la utilización de los infrarrojos.

Una vez diseñado todo esto, se realiza la función final que engloba la utilización de ambos sensores.

 

Control remoto

Para el modo de control remoto, lo que he realizado es que dependiendo del valor que mandemos por el control bluetooth se realice el movimiento deseado.

Control Remoto Mi app Inventor

 

 

Acelerómetro

Para la esta función hemos utilizado los videos que nos proporciona nuestro profesor de la asignatura Leopoldo Armesto Ángel. Estos videos son los siguientes:

Una vez entendido esto solo necesitamos aplicarlo a nuestro uso, en este caso el movimiento del robot.

Seguidor de luz

Para el desarrollo de esta función hemos utilizado los sensores KY-018. Con ellos lo que realizamos es enfocar a ellos con la luz, si ven oscuridad te devuelven un valor alto y si detectan luz ese valor baja. Para el control de giro lo que he realizado ha sido una división de tal manera que si el sensor izquierdo obtiene menos valor que el derecho se realiza la división del valor pequeño entre el valor grande, quedándote un valor inferior a 1 el cual va a multiplicar a la rueda del sensor que mas luz detecta ya que queremos que gire hacia ese lado.

APLICACIÓN PARA EL MANEJO DE FUNCIONES

Mediante la pagina de Mi app Inventor he desarrollado una aplicación la cual cuenta con la siguiente interfaz.

Pantalla Principal

Mediante esta pantalla podemos acceder a la conexión bluetooth, y una vez nos conectemos podemos acceder a los distintos modos seleccionados. En cada uno de los modos tenemos una opción de parada y de inicio, para así poder controlar totalmente el robot sin tener que volver a la pantalla principal.
Esta aplicación esta diseñada toda en una misma pantalla debido al error que daba el bluetooth al cambiar de pantalla, así que para solucionarlo diseñé toda la aplicación en una única pantalla, haciendo visibles e invisibles los elementos dependiendo del botón pulsado o del estado en el que se encuentre.

Aquí os dejo una pequeña muestra de los bloques realizados en Mi App Inventor;

 

Muestra de los bloques de la app

 

Como se observa una interfaz dentro de un modo:

 

Ventana del Seguilineas

 

Muchas gracias por llegar hasta aquí, espero haberte ayudado.

Entrada realizada por Hugo García García.