Sensore ultrasuoni HC-SR04 - modulo misura distanza
zoom_out_map
chevron_left chevron_right

Le immagini dei prodotti sono solo a scopo informativo e potrebbero presentare piccole differenze, a seconda del lotto e del fornitore. Le specifiche e i prezzi dei prodotti potrebbero essere soggetti a modifiche senza preavviso. Facciamo del nostro meglio per aggiungere specifiche quanto più precise e corrette possibili alla pagina del prodotto, ma è possibile che non siano del tutto corrette. Se identifichi un caso del genere, ti preghiamo di segnalarcelo.

Il prodotto è destinato agli specialisti e richiede personale qualificato e autorizzato. Il prodotto non include istruzioni di montaggio/uso . La messa in funzione del prodotto da parte di persone non qualificate comporta la perdita della garanzia secondo i Termini e Condizioni presenti sul sito.

Le specifiche tecniche indicate (corrente, potenza, ecc.) rappresentano valori massimi consentiti in condizioni ideali di funzionamento. Per un utilizzo sicuro e una durata ottimale, si raccomanda di utilizzare il prodotto in regime continuo a non più del 50% dei valori massimi specificati.

Sensore a ultrasuoni HC-SR04, distanza 2-450 cm, 5V

Sensore a ultrasuoni compatibile con Arduino, ideale per la misurazione rapida della distanza e il rilevamento di ostacoli in progetti di robotica o automazione. Funziona a 5V, copre un intervallo da 2 cm a 450 cm, offre una precisione fino a 0,3 cm e si collega facilmente tramite i pin Trigger ed Echo per una semplice integrazione negli assemblaggi.

8,13 RON Tasse incluse

6,72 RON Tasse escluse

(5/5) su un total di 4 valutazioni
Leggi le recensioni

Acquistando questo prodotto guadagni 0,41 RON in punti fedeltà.

Garanzia: 24 mesi per le persone fisiche
SPEDIZIONE INTERNAZIONALE
Spedizione veloce gratuita per ordini superiori a 100EUR nella maggior parte de paesi UE.
SPEDIZIONE VELOCE 24 ORE
Spediamo dal nostro magazzino entro 24 ore
PUNTI FEDELTÀ
Ricevi punti a ogni ordine, per un valore del 5%.

Il sensore a ultrasuoni HC-SR04 è un modulo di misurazione della distanza senza contatto, che combina sulla stessa scheda un trasmettitore e un ricevitore a ultrasuoni e un circuito di controllo dedicato. Il sensore rileva la presenza e la distanza degli oggetti solidi davanti a sé, ed è usato frequentemente nella robotica mobile per l’evitamento degli ostacoli, nei sistemi di parcheggio, nella misurazione del livello dei liquidi nei serbatoi o in qualsiasi progetto che richieda una lettura rapida ed economica della distanza.

Il principio di funzionamento è semplice e si basa sul tempo di volo del suono. Il pin Trig riceve un impulso TTL di almeno 10 us, dopo di che il modulo invia automaticamente un pacchetto di 8 cicli di ultrasuoni a 40 kHz e attende l’eco riflesso dall’oggetto. Il pin Echo rimane a livello logico alto per tutta la durata in cui il suono si sposta andata e ritorno, e questa durata viene convertita in distanza tramite la formula distanza in centimetri uguale al tempo in microsecondi diviso per 58, rispettivamente tramite la distanza uguale al tempo moltiplicato per la velocità del suono di 340 m/s e diviso per 2. L’angolo effettivo di misurazione è di circa 15 gradi, e per risultati corretti la superficie bersaglio deve avere almeno 0.5 metri quadrati.

Tra le caratteristiche principali si annoverano i due trasduttori a ultrasuoni montati visibilmente sulla parte frontale della scheda, il cristallo oscillatore che sincronizza il circuito di controllo, i componenti di segnalazione e i 4 pin di interfaccia marcati Vcc, Trig, Echo e Gnd, accessibili su un header con passo di 2.54 mm. L’alimentazione del modulo avviene a 5 VDC, tramite il pin Vcc, con un consumo tipico di 15 mA in funzionamento.

Tramite i due segnali digitali Trig ed Echo, il sensore è compatibile con Arduino, ESP32, STM32, Raspberry Pi e qualsiasi altra scheda di sviluppo che disponga di almeno due pin GPIO, un pin di uscita per il trigger e uno di ingresso per la lettura dell’eco.

 

Specifiche:

Modello: HC-SR04

Tensione di alimentazione: 5 VDC

Corrente assorbita: circa 15 mA

Frequenza ultrasuoni: 40 kHz, in pacchetti di 8 cicli per misurazione

Segnale trigger: impulso TTL di almeno 10 us sul pin Trig

Segnale echo: impulso TTL con durata proporzionale alla distanza, sul pin Echo

Distanza di rilevamento: 2 cm - 450 cm

Precisione: 0.3 cm

Angolo di misurazione: 15 gradi

Interfaccia: 4 pin Vcc, Trig, Echo, Gnd

Dimensioni: 45 x 20 x 15 mm

 

Pinout:

Connettore Pin Funzione
Header 4 pin Vcc Alimentazione 5 VDC
Header 4 pin Trig Ingresso trigger, impulso TTL di almeno 10 us per l’avvio della misurazione
Header 4 pin Echo Uscita impulso TTL con durata proporzionale alla distanza misurata
Header 4 pin Gnd Massa

 

Utilizzo:

Collegate il pin Vcc del sensore a 5 VDC e il pin Gnd alla massa comune con la scheda di sviluppo.

Collegate il pin Trig a un’uscita digitale e il pin Echo a un ingresso digitale della scheda di sviluppo.

Se utilizzate una scheda con logica a 3.3 V, come ESP32, STM32 o Raspberry Pi, montate un partitore resistivo o un convertitore di livello sul pin Echo, poiché il segnale di uscita del sensore è a 5 V.

Generate sul pin Trig un impulso HIGH di almeno 10 us per avviare una misurazione.

Misurate la durata dell’impulso HIGH ricevuto sul pin Echo e calcolate la distanza dividendo il tempo espresso in microsecondi per 58 per i centimetri, rispettivamente per 148 per i pollici.

Lasciate una pausa di almeno 60 ms tra due misurazioni successive, in modo che l’eco di una misurazione non interferisca con la successiva.

Montate il sensore in modo che la superficie dell’oggetto bersaglio abbia almeno 0.5 metri quadrati e sia il più possibile perpendicolare ai due trasduttori.

Evitare bersagli in materiali morbidi o assorbenti, come tessuti o schiuma, poiché attenuano l’eco e possono generare letture errate o assenza di risposta.

Non superate la tensione di alimentazione di 5 VDC e verificate la polarità di Vcc e Gnd prima del collegamento.

22017

Produs destinat utilizarii in proiecte electronice, automatizari, prototipare, educatie si cercetare.

Produsul trebuie utilizat numai conform specificatiilor tehnice mentionate in descriere si/sau in documentatia produsului.

Avertismente generale de siguranta:

Nu utilizati produsul la tensiuni, curenti sau temperaturi peste valorile specificate.

Montajul si conectarea trebuie realizate de persoane cu cunostinte tehnice minime in domeniul electric/electronic.

Evitati scurtcircuitele, inversarea polaritatii si conectarea gresita a alimentarii.

Nu lasati produsul alimentat nesupravegheat in timpul testelor.

Produsul nu este jucarie si nu este destinat copiilor.

Pentru modulele electronice, se recomanda utilizarea in carcase, panouri sau montaje protejate, dupa caz.

Identificare produs:

Denumirea produsului, codul/SKU-ul si caracteristicile tehnice sunt mentionate in pagina produsului si/sau pe eticheta ambalajului.

Producator / Importator / Distribuitor:

Sigmanortec S.R.L.

Calea Bucuresti nr. 9, Targu Jiu, Gorj, Romania

E-mail: [email protected]

Website: www.sigmanortec.ro

Persoana responsabila in UE:

Sigmanortec S.R.L.

Calea Bucuresti nr. 9, Targu Jiu, Gorj, Romania

E-mail: [email protected]

Documentatie si siguranta:

Pentru informatii suplimentare, fise tehnice, declaratii de conformitate sau instructiuni, ne puteti contacta la [email protected].

// Test program for HC-SR04 Ultrasonic Distance Sensor
// Board: Arduino Uno (or any Arduino with free digital pins)
// Wiring:
//   HC-SR04 Vcc  -> Arduino 5V
//   HC-SR04 Trig -> Arduino D9
//   HC-SR04 Echo -> Arduino D10
//   HC-SR04 Gnd  -> Arduino GND
// No library required, the sensor is driven directly with digitalWrite and pulseIn

const int trigPin = 9;
const int echoPin = 10;

void setup() {
  Serial.begin(9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  digitalWrite(trigPin, LOW);
  Serial.println("HC-SR04 test starting...");
}

void loop() {
  // Generate the 10 microsecond trigger pulse
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  // Read the echo pulse width, with a timeout to avoid blocking forever
  long duration = pulseIn(echoPin, HIGH, 30000);

  if (duration == 0) {
    Serial.println("No echo received, check wiring or target out of range");
  } else {
    float distanceCm = duration / 58.0;
    float distanceInch = duration / 148.0;
    Serial.print("Distance: ");
    Serial.print(distanceCm);
    Serial.print(" cm (");
    Serial.print(distanceInch);
    Serial.println(" inch)");
  }

  delay(200);
}

Il sensore a ultrasuoni HC-SR04 è il componente più utilizzato per misurare la distanza nei progetti con Arduino, essendo presente in robot mobili che devono evitare ostacoli, in sistemi di parcheggio assistito, nella misurazione del livello di liquido in un serbatoio o in qualsiasi montaggio che necessiti di una distanza approssimativa da un oggetto davanti al sensore.

Il modulo ha due trasduttori a ultrasuoni visibili sulla faccia della scheda, un cristallo oscillatore e un header a 4 pin Vcc, Trig, Echo e Gnd, essendo pronto all'uso subito dopo il collegamento, senza calibrazione aggiuntiva.

Sensore a ultrasuoni HC-SR04

Come funziona:

Il sensore utilizza il principio dell'ecolocalizzazione. Inviate sul pin Trig un impulso HIGH di almeno 10 us, e il modulo risponde inviando un pacchetto di 8 cicli di ultrasuoni a 40 kHz. Allo stesso tempo, il pin Echo passa in HIGH e rimane così finché il suono riflesso dall'oggetto non viene ricevuto di nuovo dal sensore.

La durata in microsecondi per cui Echo resta in HIGH si legge con la funzione pulseIn e si trasforma in distanza dividendo per 58 per ottenere i centimetri, la formula derivando dalla velocità del suono di 340 m/s divisa per 2, poiché il suono percorre la distanza di andata e ritorno. Quanto più l'oggetto è lontano, tanto più lungo è l'impulso su Echo.

Cosa ti serve:

Collegamento:

Il sensore lavora a 5 V su tutti e 4 i pin, e su una scheda Arduino Uno, che ha anch'essa logica a 5 V, si collega direttamente, senza convertitore di livello o resistenze aggiuntive.

Pin prodotto Pin Arduino Uno Ruolo
Vcc 5V Alimentazione sensore
Trig D9 Comando di avvio della misurazione
Echo D10 Lettura della durata dell'impulso riflesso
Gnd GND Massa comune

Collegamento sensore a ultrasuoni HC-SR04 ad Arduino Uno

Il codice:

Caricate su Arduino Uno il programma qui sotto, che genera l'impulso di trigger, legge la durata dell'eco e visualizza la distanza calcolata sul monitor seriale.

// HC-SR04 Ultrasonic Distance Sensor with Arduino Uno
// Wiring:
// HC-SR04 Vcc -> Arduino 5V
// HC-SR04 Trig -> Arduino D9
// HC-SR04 Echo -> Arduino D10
// HC-SR04 Gnd -> Arduino GND
// No library required
const int trigPin = 9;
const int echoPin = 10;
long duration;
float distanceCm;
void setup() {
  Serial.begin(9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  digitalWrite(trigPin, LOW);
}
void loop() {
  // Send a clean LOW pulse before triggering
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  // Send the 10 microsecond trigger pulse required by the sensor
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  // Measure the duration of the HIGH pulse on the echo pin, in microseconds
  duration = pulseIn(echoPin, HIGH);
  // Convert the duration to distance in centimeters
  distanceCm = duration / 58.0;
  Serial.print("Distance: ");
  Serial.print(distanceCm);
  Serial.println(" cm");
  // Wait before the next measurement, more than the recommended 60 ms
  delay(100);
}

Come funziona il codice:

All'inizio del programma vengono definite le costanti trigPin e echoPin, che memorizzano i numeri dei pin digitali D9 e D10 utilizzati per il collegamento, insieme alla variabile duration per la durata dell'impulso e distanceCm per il risultato in centimetri.

Nella funzione setup si inizializza la comunicazione seriale a 9600 baud, il pin trigPin viene configurato come uscita, e il pin echoPin come ingresso, dopodiché trigPin viene portato esplicitamente su LOW per partire da uno stato noto.

Nella funzione loop, il programma porta prima trigPin su LOW per 2 microsecondi, poi lo alza su HIGH per 10 microsecondi e lo riporta su LOW, rispettando esattamente la durata minima di trigger richiesta dal sensore. La funzione pulseIn viene chiamata sul pin echoPin per misurare, in microsecondi, per quanto tempo il pin resta in HIGH, questo valore venendo memorizzato in duration.

La distanza distanceCm si calcola dividendo duration per 58, secondo la formula del datasheet, e il risultato viene mostrato sul monitor seriale insieme all'unità di misura. Una pausa di 100 millisecondi alla fine del loop assicura un intervallo sicuro tra due misurazioni successive, maggiore dei 60 ms raccomandati.

Risultato:

Aprite il monitor seriale a 9600 baud e vedrete la distanza misurata, aggiornata circa 10 volte al secondo, con valori che diminuiscono o aumentano man mano che avvicinate o allontanate un oggetto dal sensore.

Distance: 23.45 cm
Distance: 23.38 cm
Distance: 45.12 cm
Distance: 120.67 cm
Distance: 118.90 cm
Distance: 450.00 cm
Distance: 8.62 cm
Distance: 8.55 cm

Problemi frequenti:

Se sul monitor seriale non appare nulla, verificate che la velocità selezionata nel monitor sia 9600 baud e che abbiate scelto la porta COM corretta per la scheda collegata.

Se la distanza mostrata è sempre 0 o un numero molto grande, controllate i fili su Trig e Echo, poiché sono facili da scambiare tra loro, e pulseIn attende il segnale sul pin sbagliato.

Se i valori sono instabili o saltano bruscamente, allontanate l'oggetto bersaglio da bordi e superfici inclinate, poiché queste riflettono il suono in una direzione diversa dal sensore.

Se il sensore non reagisce quando non c'è nulla davanti a esso, la funzione pulseIn ha un timeout predefinito di un secondo, e il codice attenderà questo intervallo prima di continuare, il che rallenta la visualizzazione, essendo normale in assenza di un oggetto nel raggio di misurazione.

Se la distanza è costantemente più piccola di quella reale, verificate che la superficie bersaglio abbia almeno 0.5 metri quadrati, altrimenti parte dell'onda ultrasonica aggira l'oggetto e non torna più al ricevitore.

Limiti e consigli:

Il sensore misura correttamente solo davanti ai due trasduttori, su un cono di circa 15 gradi, e i materiali morbidi o assorbenti come i tessuti o la spugna riducono fortemente l'eco. La distanza utile parte da 2 cm e può arrivare fino a circa 450 cm in buone condizioni, con una risoluzione dell'ordine di 0.3 cm, sufficiente per la maggior parte dei progetti di robotica e automazione, tuttavia per misurazioni di maggiore precisione o in ambienti con forte rumore acustico è consigliabile un sensore ultrasonico o laser specializzato.

Potrebbe anche piacerti