STMicroelectronics VL53L7CX Senzor vremena leta za više zona
Uvod
Svrha ovog korisničkog priručnika je da objasni kako rukovati VL53L7CX senzorom vremena leta (ToF), koristeći ultra lite drajver (ULD) API. Opisuje glavne funkcije za programiranje uređaja, kalibracije i izlazne rezultate.
Posebno dizajniran za aplikacije koje zahtijevaju ultraširoko vidno polje, senzor vremena leta VL53L7CX nudi dijagonalno FoV od 90°. Zasnovan na STMicroelectronics Flight Sense tehnologiji, VL53L7CX uključuje efikasno meta površinsko sočivo (DOE) postavljeno na laserski emiter omogućavajući projekciju kvadratnog FoV od 60° x 60° na scenu.
Njegova višezonska sposobnost pruža matricu od 8×8 zona (64 zone) i može raditi pri velikim brzinama (60 Hz) do 350 cm.
Zahvaljujući autonomnom režimu sa programabilnim pragom udaljenosti u kombinaciji sa ultraširokim FoV, VL53L7CX je savršen za bilo koju aplikaciju koja zahteva detekciju korisnika male energije. ST patentirani algoritmi i inovativna konstrukcija modula omogućavaju VL53L7CX da detektuje, u svakoj zoni, više objekata unutar FoV sa razumevanjem dubine. STMicroelectronics algoritmi histograma osiguravaju otpornost na preslušavanje pokrovnog stakla preko 60 cm.
Izvedeno od VL53L5CX, pinouts i drajveri oba senzora su kompatibilni, što osigurava jednostavnu migraciju sa jednog senzora na drugi.
Kao i svi senzori vremena leta (ToF) bazirani na ST-ovoj Flight Sense tehnologiji, VL53L7CX bilježi, u svakoj zoni, apsolutnu udaljenost bez obzira na ciljnu boju i refleksiju.
Smešten u minijaturnom pakovanju koje se može ponovo preklopiti koje integriše SPAD niz, VL53L7CX postiže najbolje performanse u rasponu u različitim uslovima ambijentalnog osvetljenja, i za širok spektar materijala za pokrivanje stakla.
Svi ST-ovi ToF senzori integrišu VCSEL koji emituje potpuno nevidljivu IR svjetlost od 940 nm, koja je potpuno sigurna za oči (Class 1 certifikat).
VL53L7CX je savršen senzor za bilo koju primenu koja zahteva ultraširoko vidno polje poput robotike, pametnih zvučnika, video projektora, upravljanja sadržajem. Kombinacija mogućnosti za više zona i 90° FoV može poboljšati nove slučajeve upotrebe kao što su prepoznavanje pokreta, SLAM za robotiku i aktivacija sistema niske potrošnje za pametnu zgradu.
Slika 1. VL53L7CX senzorski modul
Akronimi i kratice
Akronim/skraćenica | Definicija |
DOE | difrakcijski optički element |
FoV | polju view |
I²C | interintegrisano kolo (serijska magistrala) |
Kcps/SPAD | Broj kilograma u sekundi po spadu (jedinica koja se koristi za kvantifikaciju broja fotona u SPAD nizu) |
RAM | memorija sa slučajnim pristupom |
SCL | serijski sat |
SDA | serijski podaci |
SPAD | jednofotonska lavinska dioda |
ToF | Vrijeme leta |
ULD | ultra lite drajver |
VCSEL | dioda koja emituje površinu vertikalne šupljine |
VHV | veoma visoka voltage |
Xtalk | preslušavanje |
Funkcionalni opis
Sistem je gotovview
VL53L7CX sistem se sastoji od hardverskog modula i ultra lite drajverskog softvera (VL53L7CX ULD) koji radi na hostu (pogledajte sliku ispod). Hardverski modul sadrži ToF senzor. STMicroelectronics isporučuje softverski drajver, koji se u ovom dokumentu naziva “drajver”. Ovaj dokument opisuje funkcije drajvera koje su dostupne hostu. Ove funkcije kontroliraju senzor i dobivaju podatke o rasponu.
Slika 2. VL53L7CX sistem je završenview
Efikasna orijentacija
Modul uključuje sočivo preko Rx otvora, koji preokreće (horizontalno i vertikalno) snimljenu sliku mete. Shodno tome, zona identifikovana kao zona 0, u donjem levom uglu SPAD niza, osvetljena je metom koja se nalazi u gornjem desnom uglu scene.
Slika 3. VL53L7CX efektivna orijentacija
Šeme i I²C konfiguracija
Komunikacijom između drajvera i firmvera upravlja I²C, sa mogućnošću rada do 1 MHz. Implementacija zahtijeva povlačenje na SCL i SDA linijama. Pogledajte tablicu sa podacima VL53L7CX za više informacija. VL53L7CX uređaj ima zadanu I²C adresu 0x52. Međutim, moguće je promijeniti zadanu adresu kako bi se izbjegli sukobi s drugim uređajima ili olakšalo dodavanje više modula VL53L7CX sistemu za veći sistemski vid. I²C adresa se može promijeniti pomoću funkcije vl53l7cx_set_i2c_address().
Slika 4. Više senzora na I²C sabirnici
Da biste omogućili uređaju da promijeni svoju I²C adresu bez utjecaja na druge na I²C magistrali, važno je onemogućiti I²C komunikaciju uređaja koji se ne mijenjaju. Procedura je sledeća:
- Uključite sistem na uobičajeni način.
- Povucite LPn pin uređaja kojem neće biti promijenjena adresa.
- Povucite LPn pin uređaja koji ima promijenjenu I²C adresu.
- Programirajte I²C adresu uređaja koristeći funkciju set_i2c_address().
- Povucite LPn pin uređaja koji se ne reprogramira.
Svi uređaji bi sada trebali biti dostupni na I²C sabirnici. Ponovite gornje korake za sve VL53L7CX uređaje u sistemu koji zahtijevaju novu I²C adresu.
Sadržaj paketa i protok podataka
Arhitektura i sadržaj drajvera
VL53L7CX ULD paket se sastoji od četiri fascikle. Drajver se nalazi u folderu /
VL53L7CX_ULD_API.
Vozač se sastoji od obaveznog i opcionog files. Opciono files su plugins koristi se za proširenje ULD karakteristika. Svaki dodatak počinje riječju “vl53l7cx_plugin” (npr. vl53l7cx_plugin_xtalk.h). Ako korisnik ne želi predloženo plugins, mogu se ukloniti bez uticaja na druge karakteristike drajvera. Sljedeća slika predstavlja obaveznu files i opciono plugins.
Slika 5. Arhitektura drajvera
Korisnik također treba implementirati dva filese nalazi u folderu /Platform. Predložena platforma je prazna ljuska i mora biti ispunjena namenskim funkcijama.
Napomena: Platforma. h file sadrži obavezne makroe za korištenje ULD-a. Sve file sadržaj je obavezan za pravilno korištenje ULD-a
Kalibracijski tok
Preslušavanje (Xtalk) se definiše kao količina signala primljenog na SPAD nizu, koji je zbog VCSEL svjetla
refleksija unutar zaštitnog prozora (pokrovnog stakla) dodanog na vrhu modula. Modul VL53L7CX je samokalibriran i može se koristiti bez ikakve dodatne kalibracije.
Unakrsna kalibracija može biti potrebna ako je modul zaštićen pokrovnim staklom. VL53L7CX je imun na
preslušavanje preko 60 cm zahvaljujući algoritmu histograma. Međutim, na malim udaljenostima ispod 60 cm, Xtalk može biti veći od stvarnog vraćenog signala. Ovo daje lažno očitavanje cilja ili čini da se mete čine bliže nego što stvarno jesu. Sve funkcije kalibracije preslušavanja uključene su u Xtalk dodatak (opciono). Korisnik treba da koristi file 'vl53l7cx_plugin_xtalk'.
Preslušavanje se može kalibrirati jednom, a podaci se mogu sačuvati tako da se kasnije mogu ponovo koristiti. Potreban je cilj na fiksnoj udaljenosti, sa poznatom refleksijom. Minimalna potrebna udaljenost je 600 mm, a meta mora pokriti cijeli vid polja. Ovisno o podešavanju, korisnik može izmijeniti postavke kako bi prilagodio kalibraciju preslušavanja, kao što je predloženo u sljedećoj tabeli.
Tabela 1. Dostupna podešavanja za kalibraciju
Podešavanje | Min | Predložio STMicroelectronics | Max |
Udaljenost [mm] | 600 | 600 | 3000 |
Broj samples | 1 | 4 | 16 |
Refleksija [%] | 1 | 3 | 99 |
Napomena: Povećanje broja samples povećava tačnost, ali takođe povećava vreme za kalibraciju. Vrijeme u odnosu na broj samples je linearan, a vrijednosti slijede približno vrijeme čekanja:
- 1 sample ≈ 1 sekunda
- 4 samples ≈ 2.5 sekunde
- 16 samples ≈ 8.5 sekunde
Kalibracija se izvodi pomoću funkcije vl53l7cx_calibrate_xtalk(). Ova funkcija se može koristiti u bilo koje vrijeme. Međutim, senzor se prvo mora inicijalizirati. Sljedeća slika predstavlja tok kalibracije preslušavanja.
Slika 6. Unakrsni tok kalibracije
Ranging flow
Sljedeća slika predstavlja protok raspona koji se koristi za dobijanje mjerenja. Xtalk kalibracija i opcijski pozivi funkcija moraju se koristiti prije početka sesije rangiranja. Funkcije get/set ne mogu se koristiti tokom sesije rangiranja, a programiranje „on-the-fly“ nije podržano.
Slika 7. Raspon protoka pomoću VL53L7CX
Dostupne karakteristike
VL53L7CX ULD API uključuje nekoliko funkcija koje omogućavaju korisniku da podesi senzor, ovisno o slučaju upotrebe. Sve funkcije dostupne za vozača opisane su u sljedećim odjeljcima.
Inicijalizacija
Inicijalizacija se mora obaviti prije korištenja senzora VL53L7CX. Ova operacija zahtijeva od korisnika da:
- Uključite senzor (pinovi VDDIO, AVDD, LPn postavljeni na visoko, a pin I2C_RST na 0)
- Pozovite funkciju vl53l7cx_init(). Funkcija kopira firmver (~84 kbajta) u modul. Ovo se radi učitavanjem koda preko I²C interfejsa i izvođenjem rutine pokretanja da bi se završila inicijalizacija.
Upravljanje resetiranjem senzora
Da biste resetirali uređaj, sljedeće pinove je potrebno uključiti:
- Postavite pinove VDDIO, AVDD i LPn na nisko.
- Sačekajte 10 ms.
- Postavite pinove VDDIO, AVDD i LPn na visoko.
Napomena: Prebacivanje samo I2C_RST pina resetuje I²C komunikaciju.
Rezolucija
Rezolucija odgovara broju dostupnih zona. Senzor VL53L7CX ima dvije moguće rezolucije: 4×4 (16 zona) i 8×8 (64 zone). Standardno je senzor programiran u 4×4. Funkcija vl53l7cx_set_resolution() dozvoljava korisniku da promijeni rezoluciju. Kako frekvencija raspona ovisi o rezoluciji, ova funkcija se mora koristiti prije ažuriranja frekvencije raspona. Štaviše, promena rezolucije takođe povećava veličinu saobraćaja na I²C magistrali kada se čitaju rezultati.
Frekvencija opsega
Frekvencija raspona može se koristiti za promjenu frekvencije mjerenja. Kako je maksimalna frekvencija drugačija
između 4×4 i 8×8 rezolucije, ovu funkciju treba koristiti nakon odabira rezolucije. Minimalne i maksimalne dozvoljene vrijednosti navedene su u sljedećoj tabeli.
Tabela 2. Minimalne i maksimalne frekvencije dometa
Rezolucija | Minimalna frekvencija raspona [Hz] | Maksimalna frekvencija raspona [Hz] |
4×4 | 1 | 60 |
8×8 | 1 | 15 |
Frekvencija raspona može se ažurirati pomoću funkcije vl53l7cx_set_ranging_frequency_hz(). Podrazumevano, frekvencija raspona je postavljena na 1 Hz.
Ranging mode
Način rada dopušta korisniku da bira između raspona visokih performansi ili niske potrošnje energije. Predložena su dva načina rada:
- Kontinuirano: Uređaj kontinuirano hvata okvire s frekvencijom raspona koju definira korisnik. VCSEL je omogućen tokom svih dometa, tako da su maksimalna udaljenost dometa i otpornost na ambijent bolji. Ovaj način rada se preporučuje za brza mjerenja ili visoke performanse.
- Autonomno: Ovo je zadani način rada. Uređaj kontinuirano hvata okvire sa frekvencijom raspona
definiran od strane korisnika. VCSEL je omogućen tokom perioda definiranog od strane korisnika, korištenjem funkcije vl53l7cx_set_integration_time_ms(). Kako VCSEL nije uvijek omogućen, potrošnja energije je smanjena. Prednosti su očiglednije sa smanjenom frekvencijom dometa. Ovaj način rada se preporučuje za aplikacije male snage.
Način rangiranja se može promijeniti korištenjem funkcije vl53l7cx_set_ranging_mode().
Vrijeme integracije
Vrijeme integracije je funkcija dostupna samo uz korištenje autonomnog režima dometa (pogledajte odjeljak 4.5: Određivanje raspona
način rada). Omogućava korisniku da promijeni vrijeme dok je VCSEL omogućen. Promjena vremena integracije ako je raspon
mod je postavljen na kontinuirani nema efekta. Podrazumevano vrijeme integracije je postavljeno na 5 ms. Efekat vremena integracije je različit za rezolucije 4×4 i 8×8. Rezolucija 4×4 se sastoji od jednog vremena integracije, a 8×8 rezolucija se sastoji od četiri vremena integracije. Sljedeće brojke predstavljaju VCSEL emisiju za obje rezolucije.
Slika 8. Vrijeme integracije za 4×4 autonomno
Slika 9. Vrijeme integracije za 8×8 autonomno
Zbir svih integracijskih vremena + 1 ms overhead mora biti manji od perioda mjerenja. Inače, period raspona se automatski povećava kako bi odgovarao vrijednosti vremena integracije.
Načini napajanja
Načini napajanja mogu se koristiti za smanjenje potrošnje energije kada se uređaj ne koristi. VL53L7CX može raditi u jednom od sljedećih načina napajanja:
- Buđenje: Uređaj je postavljen na HP mirovanje (velika snaga) i čeka upute.
- Spavanje: Uređaj je postavljen u LP stanje mirovanja (niska snaga), stanje niske snage. Uređaj se ne može koristiti dok se ne postavi u režim buđenja. Ovaj način rada zadržava firmver i konfiguraciju.
Način napajanja se može promijeniti korištenjem funkcije vl53l7cx_set_power_mode(). Zadani način rada je buđenje.
Napomena: Ako korisnik želi promijeniti način napajanja, uređaj ne smije biti u stanju dometa.
oštrač
Signal koji se vraća od mete nije čist impuls sa oštrim ivicama. Rubovi se spuštaju i mogu utjecati na udaljenosti prijavljene u susjednim zonama. Oštrica se koristi za uklanjanje dijela ili cijelog signala uzrokovanog odsjajem.
BivšiampSlika prikazana na sljedećoj slici predstavlja blisku metu na 100 mm u centru u FoV, i drugu metu, dalje iza na 500 mm. Ovisno o vrijednosti oštrice, bliska meta se može pojaviti u više zona od stvarne.
Slika 10. Exampscenu koristeći nekoliko vrijednosti izoštravanja
Oštrenje se može promijeniti pomoću funkcije vl53l7cx_set_sharpener_percent(). Dozvoljene vrijednosti su između 0% i 99%. Zadana vrijednost je 5%.
Ciljni red
VL53L7CX može mjeriti nekoliko ciljeva po zoni. Zahvaljujući obradi histograma, domaćin je u mogućnosti
izaberite redosled prijavljenih ciljeva. Postoje dvije opcije:
- Najbliži: Najbliža meta je prva prijavljena
- Najjači: Najjača meta je prva prijavljena
Ciljni redoslijed se može promijeniti pomoću funkcije vl53l7cx_set_target_order(). Podrazumevani redosled je Najjači. Bivšiample na sljedećoj slici predstavlja detekciju dvije mete. Jedan na 100 mm sa niskom refleksijom, a drugi na 700 mm sa visokom refleksijom.
Slika 11. Exampleva histograma sa dva cilja
Više meta po zoni
VL53L7CX može mjeriti do četiri cilja po zoni. Korisnik može konfigurirati broj ciljeva koje vraća senzor.
Napomena: Minimalna udaljenost između dvije mete koje treba otkriti je 600 mm. Odabir nije moguć od vozača; to mora biti urađeno u 'platformskoj formi. h' file. Makro VL53L7CX_NB_ TARGET_PER_ZONE treba postaviti na vrijednost između 1 i 4. Ciljni redoslijed opisan u Odjeljku 4.9: Ciljni redoslijed direktno utječe na redoslijed otkrivenog cilja. Podrazumevano, senzor emituje samo najviše jednu metu po zoni.
Napomena: Povećani broj ciljeva po zoni povećava potrebnu veličinu RAM-a.
Xtalk margina
Xtalk margina je dodatna funkcija dostupna samo pomoću dodatka Xtalk. .c i .f files 'vl53l7cx_plugin_xtalk' treba koristiti.
Margina se koristi za promjenu praga detekcije kada se na vrhu senzora nalazi pokrovno staklo. Prag se može povećati kako bi se osiguralo da se pokrovno staklo nikada ne otkrije, nakon postavljanja podataka za kalibraciju preslušavanja. Za nprampDakle, korisnik može pokrenuti kalibraciju preslušavanja na jednom uređaju i ponovo koristiti iste podatke kalibracije za sve druge uređaje. Xtalk margina se može koristiti za podešavanje korekcije preslušavanja. Slika ispod predstavlja Xtalk marginu.
Slika 12. Xtalk margina
Pragovi detekcije
Pored redovnih mogućnosti određivanja dometa, senzor se može programirati da detektuje objekat pod određenim unapred definisanim kriterijumima. Ova funkcija je dostupna pomoću dodatka „pragovi otkrivanja“, što je opcija koja nije uključena po defaultu u API-ju. The files pod nazivom 'vl53l7cx_plugin_detection_thresholds' treba koristiti. Funkcija se može koristiti za pokretanje prekida na pinu A3 (INT) kada su ispunjeni uvjeti koje je definirao korisnik. Postoje tri moguće konfiguracije:
- Rezolucija 4×4: korištenje jednog praga po zoni (ukupno 16 pragova)
- Rezolucija 4×4: korištenje dva praga po zoni (ukupno 32 praga)
- Rezolucija 8×8: korištenje jednog praga po zoni (ukupno 64 pragova)
Bez obzira na konfiguraciju koja se koristi, procedura za kreiranje pragova i veličina RAM-a su isti. Za svaku kombinaciju praga potrebno je popuniti nekoliko polja:
- ID zone: id odabrane zone (pogledajte odjeljak 2.2: Efektivna orijentacija)
- Mjerenje: mjerenje koje treba uhvatiti (udaljenost, signal, broj SPAD-ova,…)
- Tip: prozori mjerenja (u prozorima, van prozora, ispod niskog praga,…)
- Niski prag: korisnik niskog praga za okidač. Korisnik ne mora postavljati format, njime automatski rukuje API.
- Visoki prag: korisnik visokog praga za okidač. Korisnik ne treba da postavlja format; njime automatski rukuje API.
- Matematička operacija: koristi se samo za 4×4 – 2 kombinacije praga po zoni. Korisnik može postaviti kombinaciju koristeći nekoliko pragova u jednoj zoni.
Indikator pokreta
Senzor VL53L7CX ima ugrađenu funkciju firmvera koja omogućava detekciju pokreta u sceni. Pokret
indikator se računa između uzastopnih okvira. Ova opcija je dostupna pomoću dodatka 'vl53l7cx_plugin_motion_indicator'.
Indikator pokreta se inicijalizira pomoću funkcije vl53l7cx_motion_indicator_init(). Za promjenu senzora
rezoluciju, ažurirajte rezoluciju indikatora pokreta koristeći namjensku funkciju: vl53l7cx_motion_indicator_set_resolution().
Korisnik također može promijeniti minimalnu i maksimalnu udaljenost za detekciju pokreta. Razlika između minimalne i maksimalne udaljenosti ne može biti veća od 1500 mm. Podrazumevano, udaljenosti se inicijaliziraju vrijednostima između 400 mm i 1500 mm.
Rezultati se pohranjuju u polje 'motion_ indicator'. U ovom polju, niz 'motion' daje vrijednost koja sadrži
intenzitet kretanja po zoni. Visoka vrijednost ukazuje na veliku varijaciju pokreta između kadrova. Tipično kretanje daje vrijednost između 100 i 500. Ova osjetljivost ovisi o vremenu integracije, udaljenosti cilja i refleksiji cilja.
Idealna kombinacija za aplikacije male energije je upotreba indikatora pokreta s autonomnim režimom dometa i pragovima detekcije programiranim na kretanju. Ovo omogućava otkrivanje varijacija kretanja u FoV uz minimalnu potrošnju energije.
Periodična kompenzacija temperature
Na performanse raspona utiču varijacije temperature. Senzor VL53L7CX ugrađuje temperaturu
kompenzacija koja se kalibrira jednom kada streaming počne. Međutim, ako se temperatura razvija,
kompenzacija možda neće biti usklađena s novom temperaturom. Da bi izbjegao ovaj problem, korisnik može pokrenuti periodičnu temperaturnu kompenzaciju korištenjem automatskog VHV-a. Periodična kalibracija temperature traje nekoliko milisekundi. Korisnik može definirati period. Da bi koristio ovu funkciju, korisnik treba:
- Pozovite funkciju vl53l7cx_set_VHV_repeat_count().
- Zatim navedite broj okvira između svake nove kalibracije kao argument.
Ako je argument 0, kompenzacija je onemogućena.
Rezultati rangiranja
Dostupni podaci
Opsežna lista podataka o ciljevima i okruženju može biti izlazna tokom aktivnosti rangiranja. Sljedeća tabela opisuje parametre koji su dostupni korisniku.
Tabela 3. Dostupan izlaz pomoću senzora VL53L7CX
Element | Nb bajtova (RAM) | Jedinica | Opis |
Ambijent po SPAD-u | 256 | Kcps/SPAD | Mjerenje ambijentalne brzine izvedeno na SPAD nizu, bez aktivne emisije fotona, za mjerenje brzine ambijentalnog signala zbog šuma. |
Broj otkrivenih ciljeva | 64 | Nema | Broj otkrivenih ciljeva u trenutnoj zoni. Ova vrijednost bi trebala biti prva koja treba provjeriti da bi se znala valjanost mjerenja. |
Broj omogućenih SPAD-ova | 256 | Nema | Broj SPAD-ova omogućenih za trenutno mjerenje. Daleka ili niska reflektirajuća meta aktivira više SPAD-ova. |
Signal po SPAD-u | Programirano 256 x nb meta | Kcps/SPAD | Količina fotona izmjerena tokom VCSEL impulsa. |
Domet sigma | Programirano 128 x nb meta | Milimetar | Sigma estimator za šum u prijavljenoj ciljnoj udaljenosti. |
Udaljenost | Programirano 128 x nb meta | Milimetar | Ciljna udaljenost |
Ciljni status | Programirano 64 x nb meta | Nema | Valjanost mjerenja. Vidi Odjeljak 5.5: Rezultati interpretacija za više informacija. |
Refleksija | Programirano 64 x broj meta | Procenat | Procijenjena ciljna refleksija u postocima |
Indikator pokreta | 140 | Nema | Struktura koja sadrži rezultate indikatora kretanja. Polje 'motion' sadrži intenzitet kretanja. |
Napomena: Za nekoliko elemenata (signal po spadu, sigma,…) pristup podacima je drugačiji ako je korisnik programirao više od jednog cilja po zoni (pogledajte odjeljak 4.10: Više ciljeva po zoni). Vidi prample kodovi za više informacija.
Prilagodite izbor izlaza
Po defaultu, svi VL53L7CX izlazi su omogućeni. Ako je potrebno, korisnik može onemogućiti neke izlaze senzora. Onemogućavanje mjerenja nije dostupno u upravljačkom programu; mora se izvesti u 'platformi. h' file. Korisnik može deklarirati sljedeće makroe za onemogućavanje izlaza:
#define VL53L7CX_DISABLE_AMBIENT_PER_SPAD
#define VL53L7CX_DISABLE_NB_SPADS_ENABLED
#define VL53L7CX_DISABLE_NB_TARGET_DETECTED
#define VL53L7CX_DISABLE_SIGNAL_PER_SPAD
#define VL53L7CX_DISABLE_RANGE_SIGMA_MM
#define VL53L7CX_DISABLE_DISTANCE_MM
#define VL53L7CX_DISABLE_TARGET_STATUS
#define VL53L7CX_DISABLE_REFLECTANCE_PERCENT
#define VL53L7CX_DISABLE_MOTION_INDICATOR
Posljedično, polja nisu deklarirana u strukturi rezultata, a podaci se ne prenose na host. Veličina RAM-a i I²C veličina su smanjene. Kako bi se osigurala konzistentnost podataka, ST uvijek preporučuje da 'broj otkrivenih ciljeva' i 'status cilja' ostane uključeni. Ovo filtrira mjerenja ovisno o statusu cilja (pogledajte odjeljak 5.5: Tumačenje rezultata).
Dobivanje rezultata u rasponu
Tokom sesije rangiranja, postoje dva načina da saznate da li su dostupni novi podaci o rangiranju:
- Način prozivanja: Kontinuirano koristi funkciju vl53l7cx_check_data_ready(). On detektuje novi broj tokova koji vraća senzor.
- Režim prekida: Čeka na prekid na pinu A3 (GPIO1). Prekid se automatski briše nakon ~100 μs.
Kada su novi podaci spremni, rezultati se mogu pročitati pomoću funkcije vl53l7cx_get_ranging_data(). Vraća ažuriranu strukturu koja sadrži sav odabrani izlaz. Kako je uređaj asinhroni, nema prekida za brisanje za nastavak sesije dometa. Ova funkcija je dostupna i za kontinuirani i za autonomni način rada.
Korištenje neobrađenog formata firmvera
Nakon prijenosa podataka o rasponu kroz I²C, dolazi do konverzije između formata firmvera i formata hosta. Ova operacija se obično izvodi kako bi se kao zadani izlaz senzora imala udaljenost dometa u milimetrima. Ako korisnik želi koristiti format firmvera, sljedeći makro mora biti definiran u platformi file: VL53L7CX
#define VL53L7CX_USE_RAW_FORMAT
Interpretacija rezultata
Podaci koje vraća VL53L7CX mogu se filtrirati kako bi se uzeli u obzir ciljni status. Status ukazuje na validnost merenja. Kompletna lista statusa je opisana u sljedećoj tabeli.
Tabela 4. Lista dostupnih statusa cilja
Ciljni status | Opis |
0 | Podaci o rasponu se ne ažuriraju |
1 | Brzina signala je preniska na SPAD nizu |
2 | Ciljna faza |
3 | Sigma estimator je previsok |
4 | Ciljana konzistentnost nije uspjela |
5 | Opseg validan |
6 | Omotavanje nije izvedeno (obično prvi raspon) |
7 | Dosljednost ocjene nije uspjela |
8 | Brzina signala je preniska za trenutni cilj |
9 | Domet vrijedi s velikim pulsom (može biti zbog spojene mete) |
10 | Domet je važeći, ali cilj nije otkriven na prethodnom dometu |
11 | Dosljednost mjerenja nije uspjela |
12 | Meta zamućena drugom, zbog oštrača |
13 | Meta je otkrivena, ali nedosljedni podaci. Često se dešava za sekundarne mete. |
255 | Nije otkriven cilj (samo ako je omogućen broj otkrivenih ciljeva) |
Da bi imao konzistentne podatke, korisnik mora filtrirati nevažeći status cilja. Da bi se dala ocjena povjerenja, cilj sa statusom 5 smatra se 100% validnim. Status od 6 ili 9 može se smatrati sa vrijednošću pouzdanosti od 50%. Svi ostali statusi su ispod 50% nivoa pouzdanosti.
Greške vozača
Kada dođe do greške pomoću senzora VL53L7CX, upravljački program vraća određenu grešku. Sljedeća tabela navodi moguće greške.
Tabela 5. Lista grešaka dostupnih pomoću drajvera
Ciljni status | Opis |
0 | Nema greške |
127 | Korisnik je programirao pogrešnu postavku (nepoznata rezolucija, frekvencija raspona je previsoka,…) |
255 | Velika greška. Obično greška vremenskog ograničenja, zbog greške I²C. |
ostalo | Kombinacija više gore opisanih grešaka |
Napomena: Domaćin može implementirati više kodova grešaka koristeći platformu files.
Istorija revizija
Tabela 6. Istorija revizije dokumenta
Datum | Verzija | Promjene |
02-Aug-2022 | 1 | Prvo izdanje |
02-Sep-2022 | 2 | Ažurirano Odjeljak Uvod Dodata napomena o minimalnoj udaljenosti između ciljeva do Odjeljak 4.10: Višestruko ciljeva po zoni |
21-feb-2024 | 3 | Dodan VHV (veoma visok volumentage) da Odjeljak 1: Akronimi i kratice. Dodato Odjeljak 4.14: Periodična temperaturna kompenzacija |
Korisnička podrška
VAŽNA NAPOMENA – PAŽLJIVO PROČITAJTE
STMicroelectronics NV i njegove podružnice (“ST”) zadržavaju pravo na izmjene, ispravke, poboljšanja, modifikacije i poboljšanja ST proizvoda i/ili ovog dokumenta u bilo koje vrijeme bez prethodne najave. Kupci bi trebali dobiti najnovije relevantne informacije o ST proizvodima prije nego što daju narudžbu. ST proizvodi se prodaju u skladu sa ST-ovim odredbama i uslovima prodaje koji su na snazi u trenutku potvrde narudžbe.
Kupci su isključivo odgovorni za izbor, odabir i korištenje ST proizvoda, a ST ne preuzima nikakvu odgovornost za pomoć u primjeni ili dizajn proizvoda kupaca.
ST ovdje ne daje nikakvu licencu, izričitu ili impliciranu, za bilo koje pravo intelektualne svojine.
Preprodaja ST proizvoda sa odredbama koje se razlikuju od informacija navedenih ovde poništava svaku garanciju koju ST daje za takav proizvod.
ST i ST logo su zaštitni znakovi ST. Za dodatne informacije o ST zaštitnim znakovima, pogledajte www.st.com/trademarks. Svi ostali nazivi proizvoda ili usluga vlasništvo su njihovih vlasnika.
Informacije u ovom dokumentu zamjenjuju i zamjenjuju informacije koje su prethodno date u prethodnim verzijama ovog dokumenta.
© 2024 STMicroelectronics – Sva prava zadržana
Dokumenti / Resursi
![]() |
STMicroelectronics VL53L7CX Senzor vremena leta za više zona [pdf] Korisnički priručnik VL53L7CX Senzor za višezonski raspon vremena leta, VL53L7CX, Senzor za višezonski raspon vremena leta, Senzor za višezonski raspon leta, Senzor za višezonski raspon, Senzor za domet |