Está en la página 1de 7

Creación de la aplicación para el robot

MIT App Inventor 

MIT App Inventor es un entorno de programación visual intuitivo que permite a todos, incluso
a los niños, crear aplicaciones totalmente funcionales para teléfonos inteligentes y
tabletas. Aquellos que son nuevos en MIT App Inventor pueden tener una primera aplicación
simple en funcionamiento en menos de 30 minutos. Y, lo que, es más, nuestra herramienta
basada en bloques facilita la creación de aplicaciones complejas y de alto impacto en mucho
menos tiempo que los entornos de programación tradicionales. El proyecto MIT App Inventor
busca democratizar el desarrollo de software al permitir que todas las personas, especialmente
los jóvenes, pasen del consumo de tecnología a la creación de tecnología.

Arduino

Arduino es una plataforma de desarrollo basada en una placa electrónica de hardware libre
que incorpora un microcontrolador re-programable y una serie de pines hembra, los que
permiten establecer conexiones entre el microcontrolador y los diferentes sensores y
actuadores de una manera muy sencilla

Desarrollo de la aplicación en el entorno MIT APP INVENTOR

creamos un nuevo proyecto para realizar la aplicación y se le coloco el nombre de brazo robot.
En la parte izquierda del programa tendremos diferentes funciones para la aplicación las que
se usó son etiquetas, botones, imágenes y la conexión a bluetooh, La aplicación es sencilla de
realizar y entendible a la hora de la creación.

Colocamos bloque poder dar un espacio de la separación de


botones, también podemos exportar imágenes como también podemos crear el botón. Al
crear el botón podemos ajustarlo a comodidad de uno, se puede modificar el tamaño que
deseemos también en propiedades podemos cambiar color del botón colocarle nombre entre
otros ajustes.
Colocamos los botones para las funciones que va a cumplir nuestro proyecto, creamos botón
conexión de bluetooh, botón control de antebrazo, botón control de base, botón control de
codo, botón control de brazo, botón control de pinza.

Una vez realizada la parte de diseño del control se procede a realizar la parte de codificación
por bloque para luego enlazarlas con Arduino donde estará el otro código para la conexión de
bluetooh.
Las variables que dejamos para los botones debemos usarla en el código de Arduino para que
se pueda comunicar la aplicación con el módulo bluetooh, en esta parte también tenemos una
barra de los botones que creamos y dentro de aquellos botones se encuentran los bloque para
realizar la acción que deseamos que haga.

Al terminar la parte de
los bloques guardamos el proyecto realizado y procedemos a descargar la aplicación app
(guardar archivo apk en mi ordenador).

Pasamos la aplicación a nuestro celular y verificamos si se puede instalar, también vemos las
posibles mejoras y las fallas que presentara la app.
Para la prueba de esta aplicación debemos realizar un código en la plataforma de Arduino ya
que lo usaremos en nuestro proyecto, es importante recordar las variables que se le asignaron
a los botones y que nos servirá en la parte del código de Arduino.

#include <Servo.h> // Incluye la libreria Serv


//asignamos las variables para los pines de arduino
// MOTOR DE LAS PINZAS
int arA = 2;
int abB = 3;
// MOTOR DE CODO
int arC = 4;
int abD = 5;
// MOTOR DEL ANTEBRAZO
int arE = 8;
int abF = 9;
// MOTOR DEL BRAZO
int arG = 10;
int abH = 11;
int vel= 255;// la velocidad de los motores va de 0 a 255
//PARA EL MOTOR DEL SERVO MOTOR
Servo servo1;
int ang=90;// angulo de inicio del servo
char estado = 'i'; // Comienza detenido
void setup() {
Serial.begin(9600);// inicia el puerto serial para comunicacion con el Bluetooth
//declaracion de los pines de salida
pinMode(arA, OUTPUT);
pinMode(abB, OUTPUT);
pinMode(arC, OUTPUT);
pinMode(abD, OUTPUT);
pinMode(arE, OUTPUT);
pinMode(abF, OUTPUT);
pinMode(arG, OUTPUT);
pinMode(abH, OUTPUT);
servo1.attach(7);// pin 7 del arduino declarado como salida para el servo motor
Serial.begin(9600);
}

void loop() {

if(Serial.available()>0){ // lee el bluetooth y almacena en estado


estado = Serial.read();

if(estado=='a'){ // Boton Pinza arriba


analogWrite(arA, vel);
analogWrite(abB, LOW);
analogWrite(arC, LOW);
analogWrite(abD, LOW);
analogWrite(arE, LOW);
analogWrite(abF, LOW);
analogWrite(arG, LOW);
analogWrite(abH, LOW);
}
if(estado=='b'){ // Boton Pinza abajo
analogWrite(arA, LOW);
analogWrite(abB, vel);
analogWrite(arC, LOW);
analogWrite(abD, LOW);
analogWrite(arE, LOW);
analogWrite(abF, LOW);
analogWrite(arG, LOW
if(estado=='c'){ // Boton codo arriba
analogWrite(arA, LOW);
analogWrite(abB, LOW);
analogWrite(arC, vel);
analogWrite(abD, LOW);
analogWrite(arE, LOW);
analogWrite(abF, LOW);
analogWrite(arG, LOW);
analogWrite(abH, LOW);
}
if(estado=='d'){ // Boton codo abajo
analogWrite(arA, LOW);
analogWrite(abB, LOW);
analogWrite(arC, LOW);
analogWrite(abD, vel);
analogWrite(arE, LOW);
analogWrite(abF, LOW);
analogWrite(arG, LOW);
analogWrite(abH, LOW);
}

if(estado=='e'){ // Boton antebrazo arriba


analogWrite(arA, LOW);
analogWrite(abB, LOW);
analogWrite(arC, LOW);
analogWrite(abD, LOW);
analogWrite(arE, vel);
analogWrite(abF, LOW);
analogWrite(arG, LOW);
analogWrite(abH, LOW);
}
if(estado=='f'){ // Boton antebrazo abajo
analogWrite(arA, LOW);
analogWrite(abB, LOW);
analogWrite(arC, LOW);
analogWrite(abD, LOW);
analogWrite(arE, LOW);
analogWrite(abF, vel);
analogWrite(arG, LOW);
analogWrite(abH, LOW);
}
if(estado=='g'){ // Boton brazo arriba
analogWrite(arA, LOW);
analogWrite(abB, LOW);
analogWrite(arC, LOW);
analogWrite(abD, LOW);
analogWrite(arE, LOW);
analogWrite(abF, LOW);
analogWrite(arG, vel);
analogWrite(abH, LOW);
}
if(estado=='h'){ // Boton brazo abajo
analogWrite(arA, LOW);
analogWrite(abB, LOW);
analogWrite(arC, LOW);
analogWrite(abD, LOW);
analogWrite(arE, LOW);
analogWrite(abF, LOW);
analogWrite(arG, LOW);
analogWrite(abH, vel);
}
if(estado=='i'){ // Estado detenido para que no se inicie rapidamente
analogWrite(arA, LOW);
analogWrite(abB, LOW);
analogWrite(arC, LOW);
analogWrite(abD, LOW);
analogWrite(arE, LOW);
analogWrite(abF, LOW);
analogWrite(arG, LOW);
analogWrite(abH, LOW);
}
if(estado=='j'){ // Boton del servo motor
ang = ang + 5;
Serial.print(ang);
}
if(estado=='k'){ // Boton del servo motor
ang = ang - 5;
Serial.print(ang);
}
ang = constrain(ang,0,180);
}
servo1.write(ang);
delay(80);
}

Con la codificación ya realizada podemos ver las fallas y corregirlas, podremos también ya
realizar pruebas, también podemos realizar mejoras al código, pero lo primero que tenemos
que realizar es verificar si los bonotes creados en la aplicación responden a la codificación
creada en Arduino. Ya verificado la aplicación podemos ya realizar un diseño de cómo será
nuestro placa o circuito impreso que tipo de materiales utilizaremos.

También podría gustarte