Bluetooth 4w rc car

Share

Ecco un esempio di codice Arduino per controllare un veicolo radiocomandato (RC Car) utilizzando un modulo Bluetooth HC-05 o HC-06 e un’applicazione mobile Android. In questo esempio, utilizzeremo un modulo L298N per il controllo dei motori del veicolo. Assicurati di collegare il modulo Bluetooth e il modulo di controllo dei motori all’Arduino correttamente prima di utilizzare questo codice.

#include <AFMotor.h>

AF_DCMotor motor1(1); // Motor 1
AF_DCMotor motor2(2); // Motor 2
AF_DCMotor motor3(3); // Motor 3
AF_DCMotor motor4(4); // Motor 4

char command; // Variabile per immagazzinare i comandi inviati dall'app

void setup() {
  Serial.begin(9600);  // Imposta la velocità della comunicazione seriale
  // Configura i pin dei motori come OUTPUT
  motor1.setSpeed(255);
  motor2.setSpeed(255);
  motor3.setSpeed(255);
  motor4.setSpeed(255);
}

void loop(){
  if(Serial.available() > 0){  // Se ci sono dati disponibili sulla porta seriale
    command = Serial.read();  // Leggi il comando
    Stop();  // Fermati per evitare collisioni durante il cambio di direzione
    delay(100); // Attendi per garantire che tutti i comandi siano stati ricevuti
  }
  // Esegui il comando corrispondente
  switch(command){
    case 'F': // Vai avanti
      forward();
      break;
    case 'B': // Vai indietro
      back();
      break;
    case 'L': // Gira a sinistra
      left();
      break;
    case 'R': // Gira a destra
      right();
      break;
    case 'S': // Fermati
      Stop();
      break;
  }
}

// Funzione per avanzare
void forward(){
  motor1.setSpeed(255);
  motor1.run(FORWARD);
  motor2.setSpeed(255);
  motor2.run(FORWARD);
  motor3.setSpeed(255);
  motor3.run(FORWARD);
  motor4.setSpeed(255);
  motor4.run(FORWARD);
}

// Funzione per tornare indietro
void back(){
  motor1.setSpeed(255);
  motor1.run(BACKWARD);
  motor2.setSpeed(255);
  motor2.run(BACKWARD);
  motor3.setSpeed(255);
  motor3.run(BACKWARD);
  motor4.setSpeed(255);
  motor4.run(BACKWARD);
}

// Funzione per girare a sinistra
void left(){
  motor1.setSpeed(150);
  motor1.run(BACKWARD);
  motor2.setSpeed(150);
  motor2.run(BACKWARD);
  motor3.setSpeed(150);
  motor3.run(FORWARD);
  motor4.setSpeed(150);
  motor4.run(FORWARD);
}

// Funzione per girare a destra
void right(){
  motor1.setSpeed(150);
  motor1.run(FORWARD);
  motor2.setSpeed(150);
  motor2.run(FORWARD);
  motor3.setSpeed(150);
  motor3.run(BACKWARD);
  motor4.setSpeed(150);
  motor4.run(BACKWARD);
}

// Funzione per fermarsi
void Stop(){
  motor1.setSpeed(0);
  motor1.run(RELEASE);
  motor2.setSpeed(0);
  motor2.run(RELEASE);
  motor3.setSpeed(0);
  motor3.run(RELEASE);
  motor4.setSpeed(0);
  motor4.run(RELEASE);
}

Nella configurazione hardware, dovresti collegare i motori del veicolo RC al modulo L298N e assicurarti di alimentare il modulo L298N in modo adeguato. Inoltre, collega il modulo Bluetooth (HC-05 o HC-06) al tuo Arduino e assicurati di configurarlo correttamente.

Una volta caricato questo codice sull’Arduino, puoi utilizzare un’applicazione mobile Android che può inviare comandi tramite Bluetooth al tuo Arduino per controllare il veicolo radiocomandato. Puoi creare un’applicazione mobile personalizzata o utilizzare app disponibili sul Play Store che supportano il controllo Bluetooth.