PROGETTI ARDUINO

  • HOME
  • 200 Progetti
  • PROGETTI E TUTORIAL
  • PROGETTI E TUTORIAL 2
  • ELETTRONICA
  • RECENSIONI
  • MANUALE
  • CONTATTI
  • HOME
  • 200 Progetti
  • PROGETTI E TUTORIAL
  • PROGETTI E TUTORIAL 2
  • ELETTRONICA
  • RECENSIONI
  • MANUALE
  • CONTATTI

Progetto 94
​Robot evita ostacoli

🧠 Introduzione

Dopo aver realizzato sistemi di monitoraggio, domotica e controllo via web, in questo progetto torniamo a un sistema completamente autonomo.

L’obiettivo è costruire un piccolo robot in grado di muoversi da solo ed evitare gli ostacoli utilizzando un sensore a ultrasuoni.

Il robot misura continuamente la distanza davanti a sé e decide automaticamente se andare avanti, fermarsi o cambiare direzione.
​
Questo tipo di comportamento è alla base di molti sistemi reali, come robot aspirapolvere, veicoli autonomi e sistemi di navigazione intelligente.

Questo progetto introduce anche un concetto molto importante: la logica decisionale automatica.

🧰 Materiale necessario
​
  • Arduino UNO
  • Sensore ultrasuoni HC-SR04
  • Driver motori L298N
  • 2 motori DC
  • Telaio robot (opzionale ma consigliato)
  • Batterie
  • Cavi jumper
🛒 Componenti e risorse consigliate

👉 Kit Arduino consigliato: https://amzn.to/41fmFNK
💡 Con un solo kit puoi realizzare la maggior parte dei progetti presenti nel sito.

📚 I miei libri consigliati
​

👉 Arduino per tutti – Volume 1: https://amzn.to/4rGNxB9
👉 Arduino per tutti – Volume 2: https://amzn.to/4bkfaey
👉 Arduino per tutti – Volume 3: https://amzn.to/4bogjAg

🔌 Schema di collegamento

Sensore HC-SR04
  • VCC → 5V Arduino
  • GND → GND Arduino
  • TRIG → Pin 9 Arduino
  • ECHO → Pin 10 Arduino

Driver L298N
  • IN1 → Pin 2 Arduino
  • IN2 → Pin 3 Arduino
  • IN3 → Pin 4 Arduino
  • IN4 → Pin 5 Arduino
  • OUT1 / OUT2 → Motore sinistro
  • OUT3 / OUT4 → Motore destro
  • 12V → Batteria
  • GND → GND Arduino

⚠️ Tutti i GND devono essere collegati insieme.
Foto

📚 Librerie necessarie
​

Nessuna libreria esterna richiesta.

​💻 Codice Arduino
​// ============================================
// Progetto 94 - Robot evita ostacoli
// Movimento automatico con ultrasuoni
// ============================================

int trigPin = 9;
int echoPin = 10;

// Pin motori
int in1 = 2;
int in2 = 3;
int in3 = 4;
int in4 = 5;

long durata;
int distanza;

void setup() {
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);

  pinMode(in1, OUTPUT);
  pinMode(in2, OUTPUT);
  pinMode(in3, OUTPUT);
  pinMode(in4, OUTPUT);

  Serial.begin(9600);
}

void loop() {

  // Misura distanza
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);

  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  durata = pulseIn(echoPin, HIGH);

  distanza = durata * 0.034 / 2;

  Serial.println(distanza);

  // Logica decisionale
  if (distanza > 20) {
    avanti();
  } else {
    ferma();
    indietro();
    delay(500);
    gira();
    delay(500);
  }

  delay(100);
}

// Movimento avanti
void avanti() {
  digitalWrite(in1, HIGH);
  digitalWrite(in2, LOW);
  digitalWrite(in3, HIGH);
  digitalWrite(in4, LOW);
}

// Movimento indietro
void indietro() {
  digitalWrite(in1, LOW);
  digitalWrite(in2, HIGH);
  digitalWrite(in3, LOW);
  digitalWrite(in4, HIGH);
}

// Stop motori
void ferma() {
  digitalWrite(in1, LOW);
  digitalWrite(in2, LOW);
  digitalWrite(in3, LOW);
  digitalWrite(in4, LOW);
}

// Rotazione
void gira() {
  digitalWrite(in1, HIGH);
  digitalWrite(in2, LOW);
  digitalWrite(in3, LOW);
  digitalWrite(in4, HIGH);
}

⚙️ Come funziona

Il sensore a ultrasuoni misura continuamente la distanza davanti al robot.

Se non ci sono ostacoli, il robot procede in avanti. Quando rileva un oggetto troppo vicino, si ferma, indietreggia e cambia direzione per evitare la collisione.
​
Questo comportamento crea un sistema autonomo capace di muoversi nell’ambiente senza intervento umano.

🔁 Varianti possibili
​
  • Servo per “guardare” a destra e sinistra
  • Velocità variabile con PWM
  • Sensori multipli
  • Versione robot smart avanzato

Foto

© ProgettiArduino.com 2026 - Fancello Salvatore
​ Layout, immagini e testi sono di esclusiva proprietà di www.progettiarduino.com 
Privacy Policy