Robot Wall‑E con Arduino

Guía paso a paso para construir un Wall‑E móvil con sensores y control remoto.

Donaciones Aquí

1 — Objetivo

Construir un robot inspirado en Wall‑E usando Arduino, con tracción por orugas, sensores ultrasónicos y control Bluetooth.

2 — Materiales

Ir a la Tienda

3 — Conexiones

Motor Driver

  • ENA -> D5 (PWM)
  • IN1 -> D8
  • IN2 -> D9
  • ENB -> D6 (PWM)
  • IN3 -> D10
  • IN4 -> D11

Bluetooth HC‑05

  • TX -> D2 (RX)
  • RX -> D3 (TX)
  • VCC -> 5V
  • GND -> GND

Sensor Ultrasónico

4 — Código Arduino

// Wall-E Robot básico
#include <SoftwareSerial.h>
SoftwareSerial BT(2,3);

// Pines motores
int ENA=5, IN1=8, IN2=9;
int ENB=6, IN3=10, IN4=11;

// Ultrasónico
int TRIG=12, ECHO=13;

void setup(){
  Serial.begin(9600);
  BT.begin(9600);
  pinMode(ENA,OUTPUT);
  pinMode(ENB,OUTPUT);
  pinMode(IN1,OUTPUT);
  pinMode(IN2,OUTPUT);
  pinMode(IN3,OUTPUT);
  pinMode(IN4,OUTPUT);
  pinMode(TRIG,OUTPUT);
  pinMode(ECHO,INPUT);
}

// Funciones movimiento
void adelante(){
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW);
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);
  analogWrite(ENA,200);
  analogWrite(ENB,200);
}

void atras(){
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  analogWrite(ENA,200);
  analogWrite(ENB,200);
}

void derecha(){
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  analogWrite(ENA,200);
  analogWrite(ENB,200);
}

void izquierda(){
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);
  analogWrite(ENA,200);
  analogWrite(ENB,200);
}

void stopM(){
  analogWrite(ENA,0);
  analogWrite(ENB,0);
}

long distancia(){
  digitalWrite(TRIG,LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG,HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG,LOW);
  long d=pulseIn(ECHO,HIGH)*0.034/2;
  return d;
}

void loop(){
  if(BT.available()){
    char c=BT.read();
    if(c=='F') adelante();
    if(c=='B') atras();
    if(c=='L') izquierda();
    if(c=='R') derecha();
    if(c=='S') stopM();
  }

  long d=distancia();
  if(d<20){ stopM(); }
}

5 — Control desde App

6 — Carcasa Wall‑E

Puedes imprimir el diseño en 3D (Thingiverse), o fabricar con cartón, madera o foamboard. Monta los motores en orugas y coloca el Arduino dentro.

7 — Mejoras

Descargar proyecto

Libros y Articulos recomendados

Recursos recomendados:

Catalogo de proyectos

Recursos recomendados: