Control robot Arduino via Appinventor 2

publicado en: Arduino | 0

Vamos a explicar como podemos controlar un robot con placa Arduino a través de una app creada con AppInventor2.

Para poder trabajar desde diferentes niveles, vamos a mostrar 3 versiones de control según su dificultad. 

  • Versión básica.
    • Activar bluetooth y sincronizar.
    • Encendido/apagado led.
    • 9 movimientos.
  • Versión media.
    • Control de velocidad de los motores.
    • Control de posición de un servomotor.
  • Versión avanzada.
    • Recepción de datos de Arduino.
    • Leer valores de un sensor de ultrasonidos.

Para poder realizar el control via app primero debemos conectar nuestra placa Arduino a cada uno de los componentes. En la siguiente tabla se muestra la conexión realizada para el correcto funcionamiento según la programación de la APP. Si se desea canviar la programación desde la app recordar de cambiar las entradas y salidas correspondientes en la placa Arduino

Pin ArduinoElemento conectadoBluetoothUltrasonidosServomotorL298NLáser
0      
1      
2Bluetooth TXDTxD    
3Bluetooth RXDRxD    
4Ultrasonidos Echo Echo   
5Motor 1 ENA   ENA 
6Motor 2 ENB   ENB 
7Ultrasonidos Trigger Trig   
8Motor 1 IN1   IN1 
9Motor 1 IN2   IN2 
10Motor 2 IN3   IN3 
11Motor 2 IN4   IN4 
12Servomotor  Señal  
13Led/Láser    Positivo
A0      
A1      
A2      
A3      
A4      
A5      
+5V VCCVcc +5V 
GND GNDGndNegativoGNDNegativo
    Positivo+12V 

Esquema de conexiones

Esquema de botones y datos enviados a Arduino desde Appinventor2

ROBOT ARDUINO BÁSICO

El programa básico permite controlar la dirección de los dos motores, lo que permite realizar 9 movimientos y, además, controlar el encendido y apagado del led.

Programa Arduino: BT_Robot_Basic.ino(link is external)

Programa Appinventor2: BT_Robot_Basic.aia(link is external)

Captura diseño Appinventor_basico

Esquema de bloques Appinventor_basico

ROBOT ARDUINO ESTÁNDAR

El programa estándar permite todos los controles de la versión anterior y permite elegir entre tres velocidades de los motores y tres posiciones para el servomotor.

Programa Arduino: BT_Robot_Estandard.ino(link is external)

Programa Appinventor2: BT_Robot_Estandard.aia(link is external)

Captura diseño Appinventor_estandard

Captura bloques Appinvetor_estandard

ROBOT ARDUINO AVANZADO

El programa avanzado permite todos los controles de la versión anterior y, además, permite ver los datos enviados desde la placa Arduino y poder utilizar el sensor de ultrasonidos.

Programa Arduino: BT_Arduino_Avanzado.ino(link is external)

Programa Appinventor2: BT_Appinventor_Avanzado.aia(link is external)

Captura diseño Appinventor_avanzado

Captura bloques Appinventor_avanzado 

Captura bloques Appinventor_avanzado comunicación bidireccional

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *