Componentes Eletronicos

Sensor de Distância Laser GY-VL53L0XV2

Eletrogate 29 de abril de 202115min de leitura

Introdução

O sensor de distância é um dos componentes mais utilizados em projetos com Arduino. Existem diversos tipos desses sensores, e, em alguns casos, é até difícil decidir qual modelo de sensor é o mais adequado para o seu projeto. Aqui em nosso blog, já abordamos o sensor ultrassônico, que pode ser acessado clicando aqui. Porém, hoje, abordaremos com mais detalhes o Sensor de Distanciamento Laser GY-VL53L0XV2, destacando seu funcionamento, características físicas e o desenvolvimento de um projeto exemplo. E aí, bora aprender?


Descrição e Funcionamento

O que é?

O Sensor GY-VL53L0XV2 mede distâncias utilizando a reflexão da luz. Pelo seu tamanho compacto, ele é ideal para projetos de pequeno porte. Este sensor utiliza o módulo de alcance de laser VL53L0X para medir as distâncias.

O VL53L0X é o módulo de alcance de laser Time-of-Flight (ToF) da nova geração mais compacto disponível atualmente no mercado, fornecendo medição precisa da sua distância entre outro objeto, que, ao contrário de tecnologias convencionais, independe da refletância do alvo. Ele pode medir distâncias absolutas de até 2m, estabelecendo uma nova referência em níveis de alcance de desempenho, abrindo a porta para vários novos aplicativos.

O VL53L0X integra uma matriz de ponta SPAD (díodos de avalanche de fóton único) e incorpora FlightSenseTM da segunda geração da tecnologia patenteada ST.

O emissor VCSEL (Laser de emissão superficial de cavidade vertical) de 940 nm do VL53L0X, é totalmente invisível ao olho humano, e juntamente com filtros infravermelhos de física interna, permite alcançar distâncias mais longas, maior imunidade à luz ambiente e melhor robustez para cobrir a diafonia óptica de vidro.

Características

  • Sistema de detecção: laser;
  • Alimentação: 3.3 VDC (somente 3V3);
  • Distância de detecção: 30 à 1000mm;
  • Interface: I2C;
  • Dimensões (CxLxE): 25×12,7×3,5mm;
  • Peso: 1,5g.

Pinout

  • VIN: entrada de 3,3 V;
  • GND: terra;
  • SCL: entrada serial de clock do I2C;
  • SDA: entrada serial de dados do I2C;
  • GPI01: sinal enviado ao microcontrolador para notificar quando a medição está completa;
  • XSHUT: utilizado para manter o sensor no estado de reset;

Projeto Exemplo

Instalando a biblioteca

Antes de iniciarmos nosso projeto, é necessário instalar a biblioteca do componente. Para isso, basta abrir a IDE e acessar Ferramentas->Gerenciar Bibliotecas…, como mostrado abaixo.

Feito isso, digite “vl53” na barra de pesquisa e instale a biblioteca destacada abaixo.

Pronto! Agora, podemos começar nosso projeto.

Lista de Materiais

cta_cart

Diagrama

A imagem abaixo representa a montagem do nosso projeto (o sensor está um pouco diferente do nosso, mas as entradas são as mesmas).

Código

O código que será utilizado aqui faz parte dos exemplos da biblioteca que baixamos, portanto, para acessá-lo, basta clicar em Arquivo->Exemplos->Adafruit_VL53L0X->vl53l0x.

Ou copie o código abaixo, se preferir.

#include "Adafruit_VL53L0X.h"

Adafruit_VL53L0X lox = Adafruit_VL53L0X();

void setup() {
  Serial.begin(115200);

  // wait until serial port opens for native USB devices
  while (! Serial) {
    delay(1);
  }
  
  Serial.println("Adafruit VL53L0X test");
  if (!lox.begin()) {
    Serial.println(F("Failed to boot VL53L0X"));
    while(1);
  }
  // power 
  Serial.println(F("VL53L0X API Simple Ranging example\n\n")); 
}


void loop() {
  VL53L0X_RangingMeasurementData_t measure;
    
  Serial.print("Reading a measurement... ");
  lox.rangingTest(&measure, false); // pass in 'true' to get debug data printout!

  if (measure.RangeStatus != 4) {  // phase failures have incorrect data
    Serial.print("Distance (mm): "); Serial.println(measure.RangeMilliMeter);
  } else {
    Serial.println(" out of range ");
  }
    
  delay(100);
}

Resultados

Tendo feito todos os passos, basta rodar o código. Para ver os resultados, acesse o monitor serial da IDE, ele mostrará a qual distância o sensor está do obstáculo mais próximo, como mostrado no vídeo abaixo:


Considerações Finais

A partir do que foi abordado neste post, é possível concluir que a utilização do Sensor de Distância Laser GY-VL53L0XV2 é de extrema importância em vários projetos com o Arduino. Aqui, aprendemos sobre seu funcionamento e características físicas, demonstrando também como é possível implementá-lo em nosso dia-a-dia.

Por fim, espero que essa pequena explicação tenha fomentado sua curiosidade e que, a partir dela, você possa explorar todas as possibilidades deste componente.

Quer aprender um pouco mais sobre sensores e suas aplicabilidades? Acesse nossos posts relacionados abaixo!

Se curtiu o post e gostaria de aprender mais sobre Arduino e suas aplicações, siga-nos no Instagram: @eletrogate.

Até mais!


Sobre o Autor


Ricardo Lousada
@ricardo_lousada

Graduando em Engenharia de Controle e Automação pela UFMG. Ocupo meu tempo aprendendo cada vez mais sobre eletrônica e programação, áreas que mais gosto. Meus hobbies são cinema e livros.


Lista de materiais

Eletrogate

29 de abril de 2021

A Eletrogate é uma loja virtual de componentes eletrônicos do Brasil e possui diversos produtos relacionados à Arduino, Automação, Robótica e Eletrônica em geral.

Conheça a Metodologia Eletrogate e Lecione um Curso de Robótica nas Escolas da sua Região!

Eletrogate Robô

Assine nossa newsletter e
receba  10% OFF  na sua
primeira compra!