VL53L0X: sensor jarak laser presisi tinggi

VL53L0X

Dalam beberapa proyek Anda, Anda perlu mengukur jarak. Nah, Anda harus tahu bahwa file VL53L0X adalah perangkat yang memungkinkan untuk mengukurnya dengan presisi tinggi. Selain itu, ukurannya yang kecil dan harga yang rendah membuatnya ideal untuk proyek DIY Anda, terutama untuk berintegrasi dengan Arduino.

Ada banyak perangkat yang dapat mengukur jarak, beberapa di antaranya adalah pengukur jarak berdasarkan ultrasound yang mengeluarkan suara dan saat memantul dengan benda memungkinkan untuk mengetahui dengan cukup presisi jarak yang ada. Tetapi jika Anda menginginkan presisi tertinggi, untuk ini Anda memerlukan a pengukur jarak optik. Alat ukur jenis ini didasarkan pada laser, seperti halnya dengan VL53L0X.

Apa itu ToF?

Prinsip ToF (skema)

Kamera Time of Flight atau ToF (Time-of-Flight) itu adalah teknik yang digunakan untuk mengukur jarak. Ini didasarkan pada optik, mengukur waktu yang berlalu antara emisi berkas cahaya dan penerimaannya. Mereka bisa berupa CCD, sensor CMOS, dan pulsa bisa berupa infra merah, laser, dll. Sistem akan disinkronkan untuk memulai pengukuran waktu tepat saat pulsa dipicu dan menghentikan penghitung saat menerima pantulan dari sensor.

Dengan cara tersebut jarak dapat dihitung dengan cukup akurat. Hanya dibutuhkan sirkuit logika tambahan yang diintegrasikan ke dalam chip untuk melakukan kalkulasi dari saat berkas ditembakkan hingga diterima dan dengan demikian menentukan jaraknya. Prinsipnya cukup mudah.

ESP8266
Artikel terkait:
ESP8266: modul WIFI untuk Arduino

Jenis perangkat ini digunakan di robotika untuk memungkinkan robot atau drone menghindari rintangan, untuk mengetahui seberapa jauh mereka dari target, untuk mendeteksi pergerakan atau kedekatan, untuk sensor mobil yang digunakan untuk aplikasi yang berbeda, untuk menerapkan pengukur elektronik, seperti aktuator sehingga Arduino melakukan sesuatu ketika itu mendeteksi kedekatan tertentu dari suatu objek, dll.

Apa itu VL53L0X dan lembar data

VL53L0X

El VL53L0X menggunakan prinsip ini untuk mengukur jarak dengan laser infra merah. generasi terakhir. Bersama dengan prosesor, seperti Arduino, ini bisa menjadi alat yang ampuh untuk mengukur. Secara spesifik, chip tersebut dapat menangkap jarak antara 50mm dan 2000mm, yaitu antara 5 sentimeter dan 2 meter.

Untuk mengukur jarak yang lebih dekat, Anda mungkin memerlukan varian chip ini yang disebut VL6180X yang memungkinkan Anda mengukur rentang antara 5 dan 200 mm, yaitu antara setengah sentimeter dan 20 sentimeter. Jika Anda ingin menemukan perangkat serupa tetapi berbasis ultrasound karena alasan teknis apa pun, Anda harus melihat HC-SR04, modul lain yang cukup murah yang populer di kalangan pembuat.

El Chip VL53L0X telah dirancang untuk bekerja bahkan saat cahaya sekitar cukup tinggi. Ingatlah bahwa ketika bekerja secara optik, semakin besar "polusi" cahaya lingkungan, semakin sulit menangkap pantulan sinyal secara memadai. Tapi dalam kasus ini tidak terlalu banyak masalah. Selain itu, sistem kompensasi yang terintegrasi memungkinkannya mengukur meskipun Anda menggunakannya di balik kaca pelindung.

Itu membuatnya menjadi satu dari sensor jarak terbaik yang akan Anda temukan di pasar. Dengan presisi yang jauh lebih tinggi daripada sensor berbasis ultrasound atau inframerah (IR). Alasan ketepatannya adalah karena laser tidak akan terpengaruh oleh gema atau pantulan dari objek seperti dalam kasus lain.

Saat ini Anda dapat menemukannya terintegrasi dalam bagal dengan beberapa tambahan untuk sekitar € 16 atau di piring sederhana lebih dari € 1 atau € 3 dalam kasus lain. Anda sudah tahu bahwa Anda akan menemukannya di toko-toko seperti eBay, AliExpress, Amazon, dll. Produsen perangkat ini beragam, jadi jika Anda perlu mengetahui detail model yang Anda beli, sebaiknya periksa lembar data pabrikan yang telah Anda pilih. Sebagai contoh:

El VL53L0X Ia memiliki di dalam chip pemancar pulsa laser dan sensor untuk menangkap pancaran kembali. Dalam hal ini, emitornya adalah laser dengan panjang gelombang 940nm dan tipe VCSEL (Vertical Cavity Surface-Emitting Laser). Sedangkan untuk sensor penangkapannya adalah SPAD (Single Photon Avalanche Diodes). Ini juga mengintegrasikan elektronik internal yang disebut FlightSenseTM yang akan menghitung jarak.

El sudut pengukuran atau FOV (Field of View) dalam kasus ini adalah 25º. Itu berarti luas pengukuran berdiameter 0,44m pada jarak 1m. Meskipun rentang pengukuran akan tergantung pada kondisi sekitar. Jika dilakukan di dalam ruangan sedikit lebih tinggi daripada jika dilakukan di luar ruangan. Ini juga akan tergantung pada pantulan objek yang Anda tunjuk:

Reflektansi target Syarat Interior Exterior
Target putih Khas 200cm 80cm
Meniru 120cm 60cm
Target abu-abu Khas 80cm 50cm
Minimum 70cm 40cm

Selain itu, VL53L0X memiliki beberapa mode operasi Itu mungkin hasil yang berbeda-beda. Mode tersebut dirangkum dalam tabel berikut:

Modo Pemilihan waktu Mencapai Precisión
Default 30ms 1.2m Lihat tabel di bawah
Presisi tinggi 200ms 1.2m + / - 3%
Jarak jauh 33ms 2m Lihat tabel di bawah
Kecepatan tinggi 20ms 1.2m + / - 5%

Menurut mode ini, kami memiliki beberapa akurasi standar dan jarak jauh yang Anda miliki di tabel ini:

Interior Exterior
Reflektansi target Jarak 33ms 66ms Jarak 33ms 66ms
Target putih pada 120cm 4% 3% pada 60cm 7% 6%
Target abu-abu pada 70cm 7% 6% pada 40cm 12% 9%

Pinout dan koneksi

Diagram chip VL53L0X

Agar semua itu berfungsi dengan baik, Anda perlu sebuah antarmuka dengan dunia luar. Dan itu dicapai melalui beberapa pin atau koneksi. Pinout dari VL53L0X cukup sederhana, hanya memiliki 6 pin. Untuk integrasinya dengan Arduino, komunikasi dapat dilakukan melalui I2C.

Untuk memberinya makan, Anda bisa sambungkan pin Begitu:

  • VCC ke 5v dari Arduino
  • GND ke GND dari Arduino
  • SCL ke pin analog Arduino. Misalnya A5
  • SDA ke pin analog lain. Misalnya A4
  • Pin GPI01 dan XSHUT tidak harus digunakan saat ini.

Integrasi dengan Arduino

VL53L0X terhubung ke Arduino

Adapun banyak modul lainnya, untuk VL53L0X Anda juga memiliki perpustakaan (misalnya untuk Adafruit) dari kode yang tersedia yang dapat Anda gunakan untuk bekerja dengan fungsi tertentu saat Anda menulis kode sumber untuk menangani proyek Anda di Arduino IDE. Jika ini pertama kalinya Anda dengan Arduino, saya sarankan manual pemrograman kami.

Contoh dari Kode sederhana bagi Anda untuk melakukan pengukuran dan menampilkan nilai pengukuran melalui port serial sehingga Anda dapat melihatnya dari layar PC Anda saat papan Arduino terhubung adalah:

#include "Adafruit_VL53L0X.h"
 
Adafruit_VL53L0X lox = Adafruit_VL53L0X();
 
void setup() {
  Serial.begin(9600);
 
  // Iniciar sensor
  Serial.println("VL53L0X test");
  if (!lox.begin()) {
    Serial.println(F("Error al iniciar VL53L0X"));
    while(1);
  }
}
 
 
void loop() {
  VL53L0X_RangingMeasurementData_t measure;
    
  Serial.print("Leyendo sensor... ");
  lox.rangingTest(&measure, false); // si se pasa true como parametro, muestra por puerto serie datos de debug
 
  if (measure.RangeStatus != 4)
  {
    Serial.print("Distancia (mm): ");
   Serial.println(measure.RangeMilliMeter);
  } 
  else
  {
    Serial.println("  Fuera de rango ");
  }
    
  delay(100);
}

Di perpustakaan Adafruit sendiri, Anda memiliki lebih banyak contoh penggunaan jika Anda membutuhkannya ...


Jadilah yang pertama mengomentari

tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.