En esta entrada vamos a hacer un repaso a todo lo que llevamos trabajado en esta primera parte del curso en Tecnología Industrial II de 2º de Bachillerato.
El proyecto que hemos comenzado a hacer es un robot que camine inspirado en modelos como el MiniKame2 Quadruped Robot.
Para ello hemos comenzado repasando partes de programación ya vistas el curso pasado, profundizando un poco más en el envío y recepción de datos por bluetooth así como en el control de las acciones de la placa. El primer proyecto que hemos realizado consiste en controlar 4 leds mediante el móvil de manera que seamos capaces de encender y apagar cada uno de ellos y además podamos encender y apagar una secuencia de encendido de los leds. El reto complicado de este primer proyecto es que además la velocidad de ejecución de esa secuencia de encendido se pueda controlar de manera instantánea mediante el móvil. Este programa nos permitirá después llevar estos conceptos a la programación de los servos del Robot 4LEGS haciendo que se muevan sus piernas individualmente o mediante una secuencia que le permita avanzar y de la que además podremos controlar su velocidad.
Para la evaluación de este proyecto en su conjunto vamos a usar la siguiente rúbrica:
http://iespalti.blogspot.com/2017/10/conexiones-arduino-para-el-proyecto.html
y de como cambiar el nombre y password del módulo bluetooth:
http://iespalti.blogspot.com/2017/12/semaforo-conexion-bluetooth-arduino-y.html
A continuación comenzamos a crear la aplicación móvil que nos permitirá enviar los datos a la placa. Aquí tenéis una imagen de un ejemplo de diseño de la aplicación:
A continuación hemos pasado a programar los componentes de la aplicación. Primero los referentes a la conexión bluetooth con el ListPicker y los diferentes botones de desconexión y de envío de señales de encendido mediante letras que recibirá la placa:
En una primera versión de la aplicación de encendido de la secuencia el cambiar la posición del slider no enviaba nada por bluetooth y era al pulsa el botón de inicio de la secuencia donde enviaba conjuntamente la letra I más el valor de la velocidad (en forma de texto de tres cifras).
Con esta primera versión de la aplicación pasamos a crear el programa en bitbloq para arduino con la idea de que la secuencia se ejecutase una sola vez y en cada caso a la velocidad que marcase el slider. En las siguiente imágenes puede verse la programación de bitbloq de esta primera versión.
Posteriormente mejoramos la versión para que, una vez activada, la secuencia se reproduzca de manera continua hasta que se pare o ejecute otra acción y que mientras se está ejecutando la secuencia podamos cambiar la velocidad. Esto nos llevo por un lado a cambiar la aplicación de appinventor para que cada vez que se modificase el slider enviase la nueva velocidad:
Y en bitbloq para que recibiese estos nuevos datos de la manera correcta y para que además la secuencia se ejecutase de manera ininterrumpida (usando un MIENTRAS en lugar de un SI) pero que al recibir nuevos datos cambiase las variables:
Con estos programas terminados y funcionando correctamente pasaremos a la parte de diseño y construcción del robot para finalmente comenzar a programar los servos que le darán movimiento.
Un saludo,
Raúl.