Robot bajo costo controlado WiFi
Robot de bajo costo controlado por WiFi
Este proyecto de robótica está destinado a crear un robot de bajo costo utilizando las netbooks de Conectar Igualdad para desarrollar el software y algunos materiales reciclados para el hardware.
Independencia tecnológica
El prototipo se construye totalmente con hardware y software LIBRES.
Software: Huayra gnu/linux [1] + IDE Arduino original [2], incluida en Huayra.
Hardware: Placa Arduino One [3] + Puente H genérico
Objetivo Brindar un proyecto de robótica de bajo costo, replicable en todo el país y pensado tanto para escuelas técnicas como para normales.
Materiales reciclados
Para la estructura del robot se utilizaron materiales reciclados.
- 2 Motor DC con caja reductora y ruedas $150
- 1 Placa Arduino One + Cable USB $300
- 1 Placa Puente H $140
- 10 Cable Reciclado
- 2 Porta-pilas capacidad 3 pilas Reciclado
- 2 Lectora de CD Reciclado
- 1 Desodorante a bolilla Reciclado
- 1 Placa Acrílica / PVC / Plástico Reciclado
Total $740 pesos (08/2015)
Como primer paso, la placa Arduino deberá tener grabado el siguiente programa:
int incomingByte = 0; // almacenar el dato serie
// MOTOR 1 int E1 = 6; int M1 = 7; // MOTOR 2 int E2 = 5; int M2 = 4;
void setup() { Serial.begin(9600); // abre el puerto serie,y le asigna la velocidad de 9600 bps
pinMode(M1, OUTPUT); pinMode(M2, OUTPUT);
} void loop() {
// envía datos sólo si los recibe:
if (Serial.available() > 0) { // lee el byte de entrada: incomingByte = Serial.read(); //muestro el dato en el monitor serial Serial.println(incomingByte, DEC); }
switch(incomingByte) { case 50: // Avanza digitalWrite(M1,HIGH); digitalWrite(M2,HIGH); delay(100); digitalWrite(M1,LOW); digitalWrite(M2,LOW); break; case 51: // Retrocede digitalWrite(E1,HIGH); digitalWrite(E2,HIGH); delay(100); digitalWrite(E1,LOW); digitalWrite(E2,LOW); break; case 52: // GIRA izquierda digitalWrite(E2,HIGH); digitalWrite(M1,HIGH); delay(100); digitalWrite(E2,LOW); digitalWrite(M1,LOW); break; case 53: // GIRA Derecha digitalWrite(E1,HIGH); digitalWrite(M2,HIGH); delay(100); digitalWrite(E1,LOW); digitalWrite(M2,LOW); break; default: // si no llega ninguna orden particular, apago los motores digitalWrite(M1,LOW); digitalWrite(M2,LOW); break;
} }
Para ello conectamos la placa por USB a una PC con Huayra y abrimos la IDE Arduino: 'Aplicaciones' -> 'Programación' -> Arduino IDE
Hacemos clic en "Verificar" y luego en "Cargar".
Comando
La máquina CLIENTE (con la que comandaremos el robot) Debemos abrir la aplicación desde el menú: 'Aplicaciones' -> 'Internet' -> Visor de escritorios remotos Vamos a hacer una conección por VNC a la máquina sobre el robot, necesitamos saber su IP.
En la máquina HOST (sobre el robot)'
Debemos activar el servidor VNC: 'Aplicaciones' -> 'Internet' -> X11VNC Server
La aplicación para comandar el robot remotamente está programada en el lenguaje Python,
utilizando el framework PILAS-engine, originalmente pensado para desarrollar video-juegos, en
este caso nos sirve para crear una interfaz vistosa. Esta aplicación debe correr en la máquina host, pero la controlamos a través del escritorio remoto VNC desde la máquina cliente. aplicación T2 en GitHub