AZ-Delivery – Modulo Sensore di Distanza VL53L0X

Sensore di distanza VL53L0X

Il modulo sensore di distanza laser VL53L0X è un sensore basato su LIDAR che misura la distanza (sino a 2metri) tra un oggetto e un sensore.

Questo modulo utilizza un principio del time of flight (ToF) per misurare la distanza. Questo sensore rilascia un raggio laser che colpisce l’oggetto in un campo di rilevamento e riflette indietro. Il dispositivo misura il tempo impiegato dal raggio laser, e utilizzando questo tempo, viene calcolata la distanza tra l’oggetto e il sensore.

Il sensore consiste in un laser ad emissione superficiale a cavità verticale (VCSEL), un regolatore di tensione e alcuni elementi passivi come resistenze e condensatori.

Questo modulo è una scheda breakout che permette il suo interfacciamento diretto con altri microcontrollori. La scheda dispone di un regolatore di tensione a bordo, che gestisce tensioni da 2.8V. La tensione applicata può variare in un range da 2.6V a 5.5V.

Il VL53L0X ha numerose applicazioni come il riconoscimento dei gesti, il rilevamento di prossimità, la robotica, il rilevamento degli ostacoli, i sistemi di prevenzione delle collisioni, i monitor degli interruttori di alimentazione, i droni, i prodotti IoT, i rubinetti automatici, il rilevamento delle mani per i distributori di sapone e così via.

Specifiche

VL53L0X

L’indirizzo I2C di default per il VL53L0X è 0x29, ma può essere cambiato, se si usano più sensori. Ogni sensore ha il suo indirizzo I2C dedicato che può essere impostato via software.

Il modulo ha sei pin. La piedinatura è mostrata nell’immagine seguente:

SAensore di distanza VL53L0X

Codice di esempio C per Arduino

Per utilizzare la scheda con Arduino è necessario innanzi tutto caricare la libreria Adafruit_VL53L0X. Per scaricarla e installarla, aprite Arduino IDE e andate su: Strumenti > Gestisci librerie. Quando si apre una nuova finestra, digitate Adafruit_VL53L0X nella casella di ricerca e installate la libreria.

Caricare lo sketch su Arduino e aprire il Monitor Seriale (Strumenti > Monitor Seriale). Il risultato dovrebbe assomigliare all’immagine seguente:

Adafruit VL53L0X

Collegamento con Raspberry PI

Collegare il modulo con il Raspberry Pi come indicato nel seguente schema di collegamento:

Sensore di distanza laser

Per utilizzare il dispositivo con il Raspberry Pi, si raccomanda di scaricare una libreria Python esterna. La libreria utilizzata in questo eBook si chiama Adafruit_CircuitPython_VL53L0X. Prima di poter utilizzare la libreria, eseguire i seguenti comandi:

Successivamente, per scaricare una libreria esterna, eseguire il seguente comando:

Per installarla, cambiare prima la directory in Adafruit_VL53L0X, eseguendo il seguente comando:

e installare la libreria con il seguente comando:

Nota: Se avete il Python versione 3.x configurato come default, potrebbe essere sufficientescrivere “python” anziché “python3” sulla riga di comando. La nota è ovviamente valida per tutte le chiamate all’interprete Python.

Per poter utilizzare il sensore con Raspberry Pi, l’interfaccia I2C sul Raspberry Pi deve essere abilitata. Per farlo, vai su:

Quando si apre una nuova finestra, cerca la scheda Interfacce. Attivare quindi il radio button I2C e clicca su OK.

Per rilevare l’indirizzo I2C del modulo, è necessario installare i2ctools. Se non c’è, nella finestra del terminale deve essere eseguito il seguente comando:

Controllare l’indirizzo I2C del modulo eseguendo il seguente comando nel terminale:

L’uscita del terminale dovrebbe essere come nell’immagine seguente:

Se l’interfaccia I2C del Raspberry Pi non è abilitata, e il comando precedente viene eseguito, viene generato il seguente errore:

VL53L0X I2C error

Codice di esempio Python per Raspberry PI

Salvare lo script con il nome vl53l0x.py. Per eseguire lo script, aprire il terminale nella directory in cui è stato salvato lo script ed eseguire il seguente comando:

Il risultato dovrebbe assomigliare all’immagine seguente:

Sensore di distanza esempio python

Per fermare lo script premere CTRL + C sulla tastiera.

Considerazioni finali

Oggi abbiamo trattato una scheda abbastanza inusuale e poco diffusa, con la dovizia di particolari che ci è congeniale. Abbiamo presentato esempi di programmazione sia in C che in Python, mostrando anche come rticonoscere l’indirizzo I2C della scheda.

Il modulo sensore di distanza VL53L0X viene a costare circa 11 euro, ma con 17 euro è possibile acquistarne ben 3.

Siamo più che sicuri che grazie a questo articolo ed il prezzo accattivante, numerosi Maker tenteranno di sviiluppare qualche progetto interessante.

Nel caso potete presentarcelo, e ne valuteremo la pubblicazione!

 

Iscriviti ai nostri gruppi Telegram

Link utili

Seguici per non perdere le prossime novità!

Definire ciò che si è non risulta mai semplice o intuitivo, in specie quando nella vita si cerca costantemente di migliorarsi, di crescere tanto professionalmente quanto emotivamente. Lavoro per contribuire al mutamento dei settori cardine della computer science e per offrire sintesi ragionate e consulenza ad aziende e pubblicazioni ICT, ma anche perche’ ciò che riesco a portare a termine mi dà soddisfazione, piacere. Così come mi piace suonare (sax, tastiere, chitarra), cantare, scrivere (ho pubblicato 350 articoli scientfici e 3 libri sinora, ma non ho concluso ciò che ho da dire), leggere, Adoro la matematica, la logica, la filosofia, la scienza e la tecnologia, ed inseguo quel concetto di homo novus rinascimentale, cercando di completare quelle sezioni della mia vita che ancora appaiono poco ricche.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.