Problema con un sensore ad ultrasuoni e due stepper motor

Vorrei costruire un veicolo con Arduino che si muove autonomamente finché il sensore ad ultrasuoni non rileva un ostacolo, dopodiché inverte la direzione dei due motori passo-passo per far tornare il veicolo indietro.
Questo è il codice:
#include <Stepper.h>

Stepper stepper1(2048, 7, 5, 6, 4);
Stepper stepper2(2048, 11, 9, 10, 8);

const int pinTrigger = 2;
const int pinEcho = 3;
const int distanzaMinima = 10;

void setup() {
pinMode(pinTrigger, OUTPUT);
pinMode(pinEcho, INPUT);
Serial.begin(9600);
stepper1.setSpeed(100);
stepper2.setSpeed(100);
}

void loop() {
long duration, cm;

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

duration = pulseIn(pinEcho, HIGH);

cm = (0.0343 * duration) / 2.0;

Serial.print("Distanza: ");
Serial.print(cm);
Serial.println(" cm");

if (cm > distanzaMinima) {
stepper1.step(1);
stepper2.step(1);
} else {
stepper1.step(-1);
stepper2.step(-1);
}
}

Allora quando metto questo codice in Arduino i motorini vanno all'indietro, e se vedo nel serial monitor la distanza risulta sempre 0 cm non facendo funzionare il tutto.

Qualcuno può aiutarmi?

Buongiorno e benvenuto nella sezione Italiana del forum,

cortesemente, come prima cosa, leggi attentamente il REGOLAMENTO di detta sezione, (... e, per evitare future possibili discussioni/incomprensioni, prestando molta attenzione al punto 15), dopo di che, come da suddetto regolamento, fai la tua presentazione NELL'APPOSITA DISCUSSIONE spiegando bene quali esperienze hai in elettronica e programmazione, affinché noi possiamo conoscere la tua esperienza ed esprimerci con termini adeguati.

Detto questo, come richiesto al punto 7 del succitato regolamento, per favore edita il tuo post qui sopra (quindi NON scrivendo un nuovo post, ma utilizzando il bottone a forma di piccola matita :pencil2: che si trova in basso del tuo post), seleziona la parte di codice e premi l'icona <code/> nella barra degli strumenti per contrassegnarla come codice. Inoltre, così com'è, non è molto leggibile ... assicurati di averlo correttamente indentato nell'IDE prima di inserirlo (questo lo si fa premendo ctrlT su un PC o cmd T su un Mac, sempre all'interno del IDE).

Grazie,

Guglielmo

P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione nell’apposita discussione e sistemato il codice come indicato, nel rispetto del regolamento nessuno ti risponderà (eventuali risposte o tuoi ulteriori post, verrebbero temporaneamente nascosti), quindi ti consiglio di farla al più presto. :wink: