ARDUINO: SENSORE DI DISTANZA AD ULTRASUONI




INTRODUZIONE

In questo progetto prendiamo in esame il sensore ad ultrasuoni HC-SR04 presente nel kit di sensori della ELEGOO acquistabili su Amazon al seguente link: ELEGOO 37-in-1 Kit
Questo sensore e' ideale per realizzare progetti in cui si vuole misurare una distanza o evitare degli ostacoli ( per esempio per un  robot o mezzo motorizzato). Non e' costoso ed è' molto semplice da utilizzare sopratutto con tutte le schede Arduino essendo disponibile una libreria apposita:

microst.it sensore ad utrasuoni



Sensore ultrasonico

Il modulo sensore a ultrasuoni HC-SR04 fornisce una funzione di misurazione senza contatto per distanze comprese nell'intervallo tra i  2 cm e i  400 cm con  la precisione di  3 mm. Il singolo modulo comprende trasmettitore e ricevitore per  ultrasuoni e il circuito di controllo.

Il principio che sta alla base del funzionamento del modulo come sensore di distanza sta nella velocità di propagazione del suono nell'aria:  in condizioni di temperatura e umidità standard e' : vs =340 m / s.


Inviando un segnale acustico verso un oggetto distante dalla sorgente sonora d metri, il tempo tp,  tempo di propagazione che necessita perché questo segnale rimbalzi sull'oggetto  e ritorni alla sorgente ( quindi fa 2 volte il percorso d) e' data dalla formula:

tp = 2 d / vs

Quindi misurando questo tempo, nota la velocità vs, si può ricavare l'informazione della distanza d. Più precisamente si misura il tempo tp maggiore sarà la precisione con cui si ricava la distanza d ( espressa in metri).

d = Vs * tp /2

Il modulo HC_SR04 possiede tutta la circuiteria necessaria per generare e ricevere il segnale ad ultrasuoni dando in uscita un impulso la cui durata rappresenta il tempo di propagazione tp. Dal punto di vista esterno il modulo e' quindi pilotabile tramite un segnale elettrico di durata minima di 10us applicato sul pin trig. Questo segnale fa partire la trasmissione di 8 impulsi a 40kHz. Di contro sul pin di uscita ECHO sarà' presente alla fine della trasmissione un impulso di durata proporzionale al tempo di propagazione tp prima definito se e' stato ricevuto un segnale di ritorno con intensità sufficiente.

Nella figura seguente il diagramma temporale dei segnai in ongresso e in uscita dal modulo HC-SR04

microst.it  sensore ad ultasuoni


.Figura 2 : andamento temporale dei segnali in ingresso ( trig) e uscita ( ECHO ) del modulo HC_SR04


La formula per ricavare il valore della distanza d in metri e':

d(m) = Vs * tp /2

Se vogliamo esprimere la distanza in cm e il tempo in us allora la formula diventa:

 d(cm) = tp( us) / 58

Si consiglia di utilizzare un ciclo di misurazione superiore a 60 ms per evitare che ci possa essere una sovrapposizione con
l'eco del ciclo della misura precedente.