Tabla de contenido:
- Suministros:
- Paso 1: Piezas
- Paso 2: Motor H Bridge
- Paso 3: Bluetooth
- Paso 4: Android
- Paso 5: Código
- Paso 6: Código 2
- Paso 7: Cámara
Todo el mundo juega juegos de movimiento en sus dispositivos móviles y se han preguntado cómo sería controlar cosas con el control de movimiento. En este instructivo, te mostraré cómo construir un robot con control de movimiento de Android que transmita video a través de wifi o VHF. Este robot también puede ser controlado a través de una PC o computadora portátil.
Si te gustó mi proyecto vota por mí en el concurso.
Suministros:
Paso 1: Piezas
1) Arduino uno
2) módulo blutooth barato de ebay
3) Un conjunto de motorreductores.
4) Un juego de ruedas.
5) cámara wifi o una cámara web
6) l293
7) batería recargable 6v
8) batería de 9v
9) PCB
Paso 2: Motor H Bridge
Para el conductor del motor hice mi propio escudo con l293 IC. El IC l293 es un IC de doble puente y funciona hasta una salida de 9v. Para cargas mayores use lm 298 IC. Las salidas 1 y 2 van al motor derecho y las salidas 3 y 4 van al motor izquierdo.
Patas
entrada 1 a arduino 2
entrada 2 a arduino 4
entrada 3 a arduino 5
entrada 4 a arduino 7
chip inhibido para arduino 3
chip inhibido para arduino 6
vss a arduino 5v
vc a + de 6v batería
Conecte los terrenos juntos. Y conecte una tierra a arduino y otra a - 6v batería. Suelde el IC al PCB y agregue algunos pines al final, asegúrese de que los pines entren en el arduino sin dañarlo.
Paso 3: Bluetooth
Todo el mundo juega juegos de movimiento en sus dispositivos móviles y se han preguntado cómo sería controlar cosas con el control de movimiento. En este instructivo, te mostraré cómo construir un robot con control de movimiento de Android que transmita video a través de wifi o VHF. Este robot también puede ser controlado a través de una PC o computadora portátil.
Si te gustó mi proyecto vota por mí en el concurso.
Paso 4: Android
Para la comunicación entre android y el arduino usamos una aplicación llamada amarino que establece una red inalámbrica.
Descargar:
plugin
Los siguientes son los pasos para
descargando el amarino
Solicitud:-
Descarga la aplicación Amarino y el complemento Amarino.
en tu ordenador.
Copia la aplicación Amarino y
Amarino plugin para Android
Tarjeta SD del teléfono.
Instala la aplicación Amarino y la
Amarino plugin en el Android
teléfono.
Encienda el robot Bluetooth.
En el teléfono Android vaya a
"Configuración -> Inalámbrico y
Red -> Configuración de Bluetooth ".
Enciende el bluetooth y busca
para su módulo bluetooth. Una vez
el módulo bluetooth es
descubierto, emparejarlo pero no hacerlo
conectarse a ella
Abre la aplicación Amarino en el
Teléfono Android. Haga clic en "Agregar
Botón "Dispositivo BT". Seleccione el
módulo bluetooth de la lista de
dispositivos
Tu módulo bluetooth ahora
aparece en el amarino
pantalla de inicio.
Seleccione el botón de archivo rojo junto a
El nombre del módulo bluetooth.
Seleccione el botón "Agregar eventos"
y seleccione el "Acelerómetro
Sensor "opción.
Ya ha terminado con la instalación
la parte de software en el Android
Teléfono
Paso 5: Código
Para codigo arduino
#incluir
const int EnablePin1 = 3;
const int EnablePin2 = 6;
const int Motor_1_A = 2;
const int Motor_1_B = 4;
const int Motor_2_A = 5;
const int Motor_2_B = 7;
datos flotantes 3 = {0};
int intdata 3 = {0};
int i = 1;
MeetAndroid meetAndroid (error);
error de anulación (bandera uint8_t, uint8_t
valores)
{
Serial.print ("ERROR:");
Serial.print (bandera);
}
configuración del vacío ()
Serial.begin (9600);
Serial.println (" t t
t.----------------------. ");
Serial.println (" t t t
bucle de vacío ()
{
meetAndroid.receive ();
}
void floatValues (byte flag, byte
NumOfValues)
{
meetAndroid.getFloatValues
(datos);
para (int i = 0; i <3; i ++)
{
meetAndroid.send (datos i);
}
if (-10 <= data 0 <= 10) //
Esto es para adelante / atrás
{
intdata 0 = int (datos 0);
intdata 0 = intdata 0 * 24;
si (datos 0 <= -2)
{
intdata 0 = abs (intdata)
0);
digitalWrite (Motor_1_A, ALTO);
digitalWrite (Motor_2_A, ALTO);
digitalWrite (Motor_1_B, BAJO);
digitalWrite (Motor_2_B, BAJO);
analogWrite (EnablePin1, intdata 0);
analogWrite (EnablePin2, intdata 0);
}
si no (datos 0> = 2)
{
digitalWrite (Motor_1_A, BAJO);
digitalWrite (Motor_2_A, BAJO);
digitalWrite (Motor_1_B, ALTO);
digitalWrite (Motor_2_B, ALTO);
analogWrite (EnablePin1, intdata 0);
analogWrite (EnablePin2, intdata 0);
}
si no (-1 <= datos 0 <= 1)
{
digitalWrite (Motor_1_A, BAJO);
digitalWrite (Motor_2_A, BAJO);
digitalWrite (Motor_1_B, BAJO);
digitalWrite (Motor_2_B, BAJO);
digitalWrite (EnablePin1, BAJO);
digitalWrite (EnablePin2, BAJO);
}
}
if (-10 <= data 1 <= 10) //
Esto es para girar a la izquierda / girar a la derecha
{
si (datos 1 <= -2)
{
escritura digital
(Motor_1_A, ALTO);
escritura digital
(Motor_2_B, ALTO);
escritura digital
(Motor_1_B, LOW);
escritura digital
(Motor_2_A, LOW);
escritura analógica
(EnablePin1, intdata 0);
analogWrite (EnablePin2, intdata 0);
}
si no (datos 1> = 2)
{
escritura digital
(Motor_1_A, BAJO);
escritura digital
(Motor_2_B, LOW);
escritura digital
(Motor_1_B, ALTO);
escritura digital
(Motor_2_A, ALTO);
escritura analógica
(EnablePin1, intdata 0);
escritura analógica
(EnablePin2, intdata 0);
}
si no (-1 <= datos 1 <= 1)
{
escritura digital
(Motor_1_A, BAJO);
escritura digital
(Motor_2_A, LOW);
escritura digital
(Motor_1_B, LOW);
escritura digital
(Motor_2_B, LOW);
escritura digital
(EnablePin1, LOW);
escritura digital
(EnablePin2, LOW);
}
}
}
Paso 6: Código 2
Para codigo arduino
#incluir
const int EnablePin1 = 3;
const int EnablePin2 = 6;
const int Motor_1_A = 2;
const int Motor_1_B = 4;
const int Motor_2_A = 5;
const int Motor_2_B = 7;
datos flotantes 3 = {0};
int intdata 3 = {0};
int i = 1;
MeetAndroid meetAndroid (error);
error de anulación (bandera uint8_t, uint8_t
valores)
{
Serial.print ("ERROR:");
Serial.print (bandera);
}
configuración de vacío () ");
Serial.println (" t t
t '----------------------' ');
pinMode (EnablePin1, SALIDA);
pinMode (EnablePin2, SALIDA);
pinMode (Motor_1_A, SALIDA);
pinMode (Motor_1_B, SALIDA);
pinMode (Motor_2_A, SALIDA);
pinMode (Motor_2_B, SALIDA);
retraso (1000);
meetAndroid.registerFunction
(valores flotantes, 'A');
bucle de vacío ()
{
meetAndroid.receive ();
}
void floatValues (byte flag, byte
NumOfValues)
{
meetAndroid.getFloatValues
(datos);
para (int i = 0; i <3; i ++)
{
meetAndroid.send (datos i);
}
if (-10 <= data 0 <= 10) //
Esto es para adelante / atrás
{
intdata 0 = int (datos 0);
intdata 0 = intdata 0 * 24;
si (datos 0 <= -2)
{
intdata 0 = abs (intdata)
0);
digitalWrite (Motor_1_A, ALTO);
digitalWrite (Motor_2_A, ALTO);
digitalWrite (Motor_1_B, BAJO);
digitalWrite (Motor_2_B, BAJO);
analogWrite (EnablePin1, intdata 0);
analogWrite (EnablePin2, intdata 0);
}
si no (datos 0> = 2)
{
digitalWrite (Motor_1_A, BAJO);
digitalWrite (Motor_2_A, BAJO);
digitalWrite (Motor_1_B, ALTO);
digitalWrite (Motor_2_B, ALTO);
analogWrite (EnablePin1, intdata 0);
analogWrite (EnablePin2, intdata 0);
}
si no (-1 <= datos 0 <= 1)
{
digitalWrite (Motor_1_A, BAJO);
digitalWrite (Motor_2_A, BAJO);
digitalWrite (Motor_1_B, BAJO);
digitalWrite (Motor_2_B, BAJO);
digitalWrite (EnablePin1, BAJO);
digitalWrite (EnablePin2, BAJO);
}
}
if (-10 <= data 1 <= 10) //
Esto es para girar a la izquierda / girar a la derecha
{
si (datos 1 <= -2)
{
escritura digital
(Motor_1_A, ALTO);
escritura digital
(Motor_2_B, ALTO);
escritura digital
(Motor_1_B, LOW);
escritura digital
(Motor_2_A, LOW);
escritura analógica
(EnablePin1, intdata 0);
analogWrite (EnablePin2, intdata 0);
}
si no (datos 1> = 2)
{
escritura digital
(Motor_1_A, BAJO);
escritura digital
(Motor_2_B, LOW);
escritura digital
(Motor_1_B, ALTO);
escritura digital
(Motor_2_A, ALTO);
escritura analógica
(EnablePin1, intdata 0);
escritura analógica
(EnablePin2, intdata 0);
}
si no (-1 <= datos 1 <= 1)
{
escritura digital
(Motor_1_A, BAJO);
escritura digital
(Motor_2_A, LOW);
escritura digital
(Motor_1_B, LOW);
escritura digital
(Motor_2_B, LOW);
escritura digital
(EnablePin1, LOW);
escritura digital
(EnablePin2, LOW);
}
}
}
Paso 7: Cámara
Puedes usar una cámara wifi de ebay o comprar una cámara web barata desde internet y luego construir un circuito vhf. Si usa una cámara IP, use el wifi de su computadora portátil y encuéntrela o ingrese la IP mencionada en el manual.
Para ver la cámara en tu Android, descarga el pequeño monitor de la Play Store.