Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Construye un Coche Robot 4WD Controlado por IR con Arduino

Componentes y suministros

ComponenteCantidad
Kit módulo sensor IR receptor inalámbrico WINGONEER para Arduino1
Driver de motor dual H-Bridge L298N SainSmart1
Kit chasis coche robot 4WD1
Arduino UNO1

Herramientas y máquinas necesarias

Sobre el proyecto

Encontré el diseño original en Instructables y construí una versión del mismo. El original era un vehículo de orugas y este es 4WD. El ajuste al diseño original viene en la configuración del IR. El diseño original sufría de retroalimentación cuando los motores funcionaban, interfiriendo con el receptor IR. Los motores actuaban como generadores donde se encontraban los cables de tierra. Cambié los pines y asignaciones para el IR.

Ensambla la base del coche usando las instrucciones proporcionadas si usas el kit rover SAINSMART.

Construye un Coche Robot 4WD Controlado por IR con Arduino

Receptor IR:

int receiver_pin = 4; // Conectar pin de salida 4 del controlador a IR receptor Y
int vcc = 5;          // Conectar pin de salida 5 del controlador a IR receptor V
int gnd = 6;          // Conectar pin de salida 6 del controlador a IR receptor G
Construye un Coche Robot 4WD Controlado por IR con Arduino

Módulo driver de motor L298N:

// Motor A

int enA = 8;
int in1 = 12;
int in2 = 11;

// Motor B

int enB = 7;
int in3 = 10;
int in4 = 9;

GND del módulo L298N a GND del controlador

Construye un Coche Robot 4WD Controlado por IR con Arduino

Módulo L298N a motores:

// Juego de motores A lado derecho

Conectar el lado "+" (Rojo) de los motores a Out 4

Conectar el lado "-" (Negro) de los motores a Out 3

// Juego de motores B lado izquierdo

Conectar el lado "+" (Rojo) de los motores a Out 2

Conectar el lado "-" (Negro) de los motores a Out 1

Conectar batería al módulo L298N "+" (Rojo) a VCC y "-" (Negro) a GND

Diagrama completo

Construye un Coche Robot 4WD Controlado por IR con Arduino
Construye un Coche Robot 4WD Controlado por IR con Arduino

Código

Control remoto IR para coche (C#)

#include <IRremote.h>
char command;
int receiver_pin = 4;
int vcc = 5;
int gnd = 6;
int statusled = 13;
IRrecv irrecv(receiver_pin);
decode_results results;

// Pines control motor
// Motor A
int enA = 8; int in1 = 12; int in2 = 11;
// Motor B
int enB = 7; int in3 = 10; int in4 = 9;

void setup() {
  Serial.begin(9600);
  irrecv.enableIRIn();
  pinMode(statusled, OUTPUT);
  digitalWrite(statusled, LOW);
  pinMode(enA, OUTPUT); pinMode(enB, OUTPUT);
  pinMode(in1, OUTPUT); pinMode(in2, OUTPUT);
  pinMode(in3, OUTPUT); pinMode(in4, OUTPUT);
  pinMode(vcc, OUTPUT); pinMode(gnd, OUTPUT);
  digitalWrite(vcc, HIGH);
}

void loop() {
  if (irrecv.decode(&results)) {
    digitalWrite(statusled, LOW);
    irrecv.resume();
    
    if (results.value == 0xFF18E7) { // Botón 2 - Adelante
      Serial.println("Button 2");
      digitalWrite(in1, HIGH); digitalWrite(in2, LOW); analogWrite(enA, 100);
      digitalWrite(in3, HIGH); digitalWrite(in4, LOW); analogWrite(enB, 100);
    } else if (results.value == 0xFF10EF) { // Botón 4 - Izquierda
      Serial.println("Button 4");
      digitalWrite(in1, HIGH); digitalWrite(in2, LOW); analogWrite(enA, 100);
      digitalWrite(in3, LOW); digitalWrite(in4, LOW); analogWrite(enB, 100);
    } else if (results.value == 0xFF30CF) { // Botón 1 - Girar derecha
      Serial.println("Button Turn Right");
      digitalWrite(in1, HIGH); digitalWrite(in2, LOW); analogWrite(enA, 100);
      digitalWrite(in3, LOW); digitalWrite(in4, HIGH); analogWrite(enB, 100);
    } else if (results.value == 0xFF5AA5) { // Botón 6 - Girar izquierda
      Serial.println("Button Turn Left");
      digitalWrite(in1, LOW); digitalWrite(in2, LOW); analogWrite(enA, 100);
      digitalWrite(in3, HIGH); digitalWrite(in4, LOW); analogWrite(enB, 100);
    } else if (results.value == 0xFF7A85) { // Botón 3 - Girar derecha (otro modo)
      digitalWrite(in1, LOW); digitalWrite(in2, HIGH); analogWrite(enA, 100);
      digitalWrite(in3, HIGH); digitalWrite(in4, LOW); analogWrite(enB, 100);
    } else if (results.value == 0xFF4AB5) { // Botón 8 - Atrás
      Serial.println("Button 8");
      digitalWrite(in1, LOW); digitalWrite(in2, HIGH); analogWrite(enA, 100);
      digitalWrite(in3, LOW); digitalWrite(in4, HIGH); analogWrite(enB, 100);
    } else if (results.value == 0xFF38C7) { // Botón 5 - Parar
      Serial.println("Button 5");
      digitalWrite(in1, LOW); digitalWrite(in2, LOW); analogWrite(enA, 100);
      digitalWrite(in3, LOW); digitalWrite(in4, LOW); analogWrite(enB, 100);
    }
  }
}

Esquemáticos

Construye un Coche Robot 4WD Controlado por IR con Arduino

Proceso de manufactura

  1. Pastillas Anticonceptivas: Historia, Beneficios, Riesgos y Producción
  2. Construya un Mando Universal Profesional para Raspberry Pi con LIRC
  3. Sistema Automatizado de Llenado y Monitorización de Piscina
  4. Sistema de Monitorización Remota de Frecuencia Cardíaca con Alertas AWS IoT
  5. Controla tu Raspberry Pi con un Mando IR Reciclado: Apagado y Reinicio vía LIRC
  6. Circuitos de Control: Fundamentos, Aplicaciones y Mejores Prácticas
  7. Monitorización en la nube: Sistema de control remoto para gestión de activos en tiempo real
  8. 5 Beneficios clave del control remoto de producción para la industria moderna
  9. Control remoto de puente grúa: impulsa seguridad y eficiencia en tu almacén
  10. Vulnerabilidad en enteliBUS de Delta Controls: Control remoto de sistemas de edificios expuesto
  11. Constructores en C#: Tipos, ejemplos y patrones avanzados