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:
- Control remoto
- Sigue líneas
- Evita obstáculos
- Acelerómetro
- 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.

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.

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.

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;

Como se observa una interfaz dentro de un modo:

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:
- Control remoto
- Sigue líneas
- Evita obstáculos
- Acelerómetro
- 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.

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.

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.

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;

Como se observa una interfaz dentro de un modo:

Muchas gracias por llegar hasta aquí, espero haberte ayudado.
Entrada realizada por Hugo García García.