VL53L0X: жогорку тактыктагы лазер аралыктын сенсору

VL53L0X

Айрым долбоорлоруңузда аралыкты өлчөө үчүн керек болот. Ооба, сиз экенин билишиңиз керек VL53L0X - аларды жогорку тактык менен өлчөөгө мүмкүнчүлүк берген шайман. Мындан тышкары, анын кичинекей көлөмү жана арзан баасы сиздин DIY долбоорлоруңуз үчүн, айрыкча Arduino менен интеграциялануу үчүн идеалдуу.

Аралыктарды ченей турган көптөгөн шаймандар бар, алардын айрымдары ультраүн үн чыгаруучу аралыкты өлчөөчү жана объект менен секиргенде ал аралыкты жетиштүү тактык менен билүүгө мүмкүнчүлүк берет. Бирок сиз эң жогорку тактыкты кааласаңыз, анда бул үчүн a керек оптикалык аралык өлчөгүч. Бул түрдөгү өлчөөчү шаймандар лазерге негизделген, VL53L0X менен болгондой.

ToF деген эмне?

ToF принциби (схема)

Учуу убактысы же ToF (Учуу убактысы) камерасы бул аралыкты өлчөө үчүн колдонулган ыкма. Ал оптикага негизделген, жарык нурунун чыгышы менен аны кабыл алуунун ортосунда өткөн убакытты өлчөйт. Алар CCD, CMOS сенсорлору жана импульстар инфракызыл, лазер жана башкалар болушу мүмкүн. Импульстун башталышы менен убакытты өлчөөнү баштоо жана сенсордон секирик келгенде эсептегичти токтотуу үчүн тутум синхрондоштурулат.

Ошентип аралыкты так эсептесе болот. Чырпык түшкөндөн баштап, алынганга чейин эсептөөлөрдү жүргүзүү жана ошентип аралыкты аныктоо үчүн чипке интеграцияланган кошумча логикалык схемалар талап кылынат. Бул принцип абдан жөнөкөй.

Окшош макала:
ESP8266: Arduino үчүн WIFI модулу

Бул типтеги шайман колдонулат Роботехника роботко же дронго тоскоолдуктардан алыс болууга, алардын максаттан канчалык алыс экендигин билүүгө, кыймылын же жакындыгын билүүгө, ар кандай колдонмолордо колдонулуучу автоунаа сенсорлоруна, электрондук эсептегичти ишке ашырууга, мисалы, Arduino качандыр бир кезде бир нерсе жасайт. ал нерсенин жакындыгын аныктайт ж.б.

VL53L0X жана маалымат жадыбалы деген эмне

VL53L0X

El VL53L0X бул принципти лазердик инфракызыл менен аралыкты өлчөө үчүн колдонот. акыркы муун. Arduino сыяктуу процессор менен бирге өлчөө үчүн күчтүү курал болушу мүмкүн. Тактап айтканда, чип 50 ммден 2000 ммге чейинки аралыкты, башкача айтканда, 5 сантиметрден 2 метрге чейинки аралыкты басып өтө алат.

Жакыныраак аралыкты өлчөө үчүн, сизге VL6180X деп аталган чиптин варианты керек, ал 5тен 200 ммге чейинки аралыкты, башкача айтканда, жарым сантиметрден 20 сантиметрге чейин ченөөгө мүмкүнчүлүк берет. Эгерде сиз кандайдыр бир техникалык себептерден улам окшош, бирок УЗИге негизделген шайман тапкыңыз келсе, анда HC-SR04 моделин, өндүрүүчүлөр арасында популярдуу болгон дагы бир арзан модулду карап көрүшүңүз керек.

El VL53L0X чипи үчүн иштелип чыккан айланадагы жарык бир топ жогору болсо дагы иштөө. Оптикалык режимде иштеп жатканда айлана-чөйрөнүн канчалык жеңил "булгануусу" көп болсо, сигналдын секирүүсүн жетиштүү деңгээлде алуу кыйынга турарын унутпаңыз. Бирок бул учурда өтө эле көп көйгөй жаралбайт. Мындан тышкары, ал интеграциялаган компенсация тутуму аны коргоочу айнектин артында колдонсоңуз дагы, өлчөөгө мүмкүнчүлүк берет.

Бул аны бир кылат аралыктын мыкты сенсорлорунан сиз базардан таба аласыз. УЗИ же инфракызыл (IR) негизиндеги сенсорлорго караганда бир кыйла жогорку тактык менен. Ушунчалык так болуунун себеби, лазерге башка учурлардагыдай эле жаңырык же объекттерден чагылышуу тийбейт.

Учурда сиз аны муллар менен биригип 16 еврого кошумча баада же башка учурларда 1 же 3 евродон бир аз жөнөкөй плиталарда таба аласыз. Аны eBay, AliExpress, Amazon ж.б. Бул шаймандардын өндүрүүчүлөрү ар кандай, андыктан сатып алган үлгүңүздүн чоо-жайын билишиңиз керек болсо, эң жакшы текшерип алыңыз өндүрүүчүнүн маалымат жадыбалы сиз тандаган. Мисалы:

El VL53L0X Чиптин ичинде лазердик импульстун эмитенти жана кайтып келе жаткан нурду кармоо үчүн сенсор бар. Бул учурда, эмитент 940нм толкун узундугу бар лазер жана VCSEL түрү (Vertical Cavity Surface-Emitting Laser). Тартуу сенсоруна келсек, ал SPAD (Single Photon Avalanche Diodes). Ошондой эле ал аралыкты эсептей турган FlightSenseTM деп аталган ички электрониканы бириктирет.

El өлчөө бурчу же FOV (Көрүү талаасы) бул учурда 25º болот. Бул 0,44м диаметри 1м аралыкта өлчөө аянтын которот. Өлчөө диапазону курчап турган шарттарга жараша болот да. Эгерде ал үйдүн ичинде жасалса, ал сыртта жасалганга караганда бир аз жогору. Ошондой эле, сиз көрсөтүп жаткан объекттин чагылышына жараша болот:

Максаттуу чагылдыруу шарттары ички иштер тышкы
Ак бута типтүү 200cm 80cm
Mimic 120cm 60cm
Боз максат типтүү 80cm 50cm
минимум 70cm 40cm

Мындан тышкары, VL53L0X бир нече бар иштөө режимдери натыйжалары ар кандай болушу мүмкүн. Ал режимдер төмөнкү таблицада келтирилген:

Modo Убакыт масштабы тактык
демейки боюнча 30ms 1.2m Төмөндөгү таблицаны караңыз
Жогорку тактык 200ms 1.2m +/- 3%
Узак аралык 33ms 2m Төмөндөгү таблицаны караңыз
Жогорку ылдамдык 20ms 1.2m +/- 5%

Бул режимдерге ылайык, бизде бир нече стандарттуу жана узак аралыкка чейинки тактык бул таблицада бар:

ички иштер тышкы
Максаттуу чагылдыруу аралык 33ms 66ms аралык 33ms 66ms
Ак бута 120см 4% 3% 60см 7% 6%
Боз максат 70см 7% 6% 40см 12% 9%

Чектөө жана байланыш

VL53L0X чип диаграммасы

 

Булардын бардыгы талаптагыдай иштеши үчүн керек тышкы дүйнө менен болгон интерфейс. Жана бул айрым казыктар же байланыштар аркылуу жетишилет. VL53L0X пинуту жөнөкөй, анын болгону 6 пин бар. Аны Arduino менен интеграциялоо үчүн I2C аркылуу байланыш түзсө болот.

Аны багыш үчүн, сиз жасай аласыз казыктарды туташтыруу Ошентип:

  • Ардуино шаарынан 5v чейин VCC
  • Ардуинонун GND - GND
  • Arduino аналогдук пинге SCL. Мисалы A5
  • SDA башка аналогдук пинге. Мисалы A4
  • Учурда GPI01 жана XSHUT казыктарын колдонуунун кажети жок.

Arduino менен интеграциялоо

VL53L0X Arduino менен байланышкан

Башка көптөгөн модулдар жөнүндө айта турган болсок, VL53L0X үчүн сизде дагы китепканалар бар (мисалы, үчүн) Adafruit) сиз жазганда айрым функциялар менен иштөө үчүн колдонула турган жеткиликтүү код Arduino IDE долбоорун иштетүү үчүн баштапкы код. Arduino менен биринчи жолу болуп жатсаңыз, мен сунуштайм биздин программалоо боюнча колдонмо.

Мисалы Сериялык порт аркылуу өлчөө жүргүзүү жана өлчөө маанисин көрсөтүү үчүн жөнөкөй код Arduino тактасы туташып турганда, аны компьютериңиздин экранынан көрө аласыз:

#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);
}

Адафруттун жеке китепканасында сизге керек болсо, колдонуунун көбүрөөк мисалдары келтирилген ...


Макаланын мазмуну биздин принциптерге карманат редакциялык этика. Ката жөнүндө кабарлоо үчүн чыкылдатыңыз бул жерде.

Комментарий биринчи болуп

Комментарий калтырыңыз

Сиздин электрондук почта дареги жарыяланбайт. Милдеттүү талаалар менен белгиленет *

*

*

  1. Маалыматтар үчүн жооптуу: Мигель Анхель Гатан
  2. Маалыматтын максаты: СПАМды көзөмөлдөө, комментарийлерди башкаруу.
  3. Мыйзамдуулук: Сиздин макулдугуңуз
  4. Маалыматтарды берүү: Маалыматтар үчүнчү жактарга юридикалык милдеттенмелерден тышкары билдирилбейт.
  5. Маалыматтарды сактоо: Occentus Networks (ЕС) тарабынан уюштурулган маалыматтар базасы
  6. Укуктар: Каалаган убакта маалыматыңызды чектеп, калыбына келтирип жана жок кыла аласыз.