STMicroelectronics VL53L7CX Шматзонны датчык дыяпазону Time Of Flight
Уводзіны
Мэта гэтага кіраўніцтва карыстальніка - растлумачыць, як працаваць з датчыкам VL53L7CX Time-of-Flight (ToF) з выкарыстаннем API ультрапалегчанага драйвера (ULD). У ім апісваюцца асноўныя функцыі праграмавання прылады, каліброўкі і вынікі вываду.
Датчык VL53L7CX Time-of-Flight, спецыяльна распрацаваны для прымянення, дзе патрабуецца звышшырокае поле зроку, прапануе дыяганальнае поле зроку 90°. Заснаваны на тэхналогіі Flight Sense ад STMicroelectronics, VL53L7CX уключае эфектыўную метапавярхоўную лінзу (DOE), размешчаную на лазерным выпраменьвальніку, што дазваляе праецыраваць на сцэну квадратнае поле гледжання 60° x 60°.
Яго шматзональная магчымасць забяспечвае матрыцу з 8×8 зон (64 зоны) і можа працаваць на высокіх хуткасцях (60 Гц) да 350 см.
Дзякуючы аўтаномнаму рэжыму з праграмуемым парогам адлегласці ў спалучэнні са звышшырокім полем зроку, VL53L7CX ідэальна падыходзіць для любых прыкладанняў, якія патрабуюць выяўлення карыстальніка з нізкім энергаспажываннем. Запатэнтаваныя алгарытмы ST і інавацыйная канструкцыя модуля дазваляюць VL53L7CX выяўляць у кожнай зоне некалькі аб'ектаў у поле зроку з разуменнем глыбіні. Алгарытмы гістаграмы STMicroelectronics забяспечваюць устойлівасць да крыжаваных перашкод вечкавага шкла больш за 60 см.
Вытворныя ад VL53L5CX, распиновка і драйверы абодвух датчыкаў сумяшчальныя, што забяспечвае просты пераход ад аднаго датчыка да іншага.
Як і ўсе датчыкі Time-of-Flight (ToF), заснаваныя на тэхналогіі Flight Sense ад ST, VL53L7CX запісвае ў кожнай зоне абсалютную адлегласць, незалежна ад колеру мэты і каэфіцыента адлюстравання.
VL53L7CX, які змяшчаецца ў мініяцюрным корпусе з магчымасцю пераплаўлення, які аб'ядноўвае масіў SPAD, забяспечвае найлепшую прадукцыйнасць у дыяпазоне ў розных умовах навакольнага асвятлення і для шырокага дыяпазону матэрыялаў вечкавага шкла.
Усе датчыкі ToF ад ST аб'ядноўваюць VCSEL, які выпраменьвае цалкам нябачнае ІЧ-святло 940 нм, якое цалкам бяспечна для вачэй (сертыфікацыя класа 1).
VL53L7CX з'яўляецца ідэальным датчыкам для любых прыкладанняў, якія патрабуюць звышшырокага агляду, такіх як робататэхніка, разумныя калонкі, відэапраектары, кіраванне кантэнтам. Спалучэнне шматзоннай магчымасці і кута агляду 90° можа палепшыць новыя варыянты выкарыстання, такія як распазнаванне жэстаў, SLAM для робататэхнікі і актывацыя сістэмы з нізкім энергаспажываннем для разумных будынкаў.
Малюнак 1. Модуль сэнсара VL53L7CX
Абрэвіятуры і абрэвіятуры
Акронім/абрэвіятура | Азначэнне |
DOE | дыфракцыйны аптычны элемент |
FoV | поле в view |
I²C | міжінтэгральная схема (паслядоўная шына) |
Kcps/SPAD | Колькасць кілаграмаў у секунду на падзенне (адзінка, якая выкарыстоўваецца для колькаснага вызначэння колькасці фатонаў у масіве SPAD) |
АЗП | аператыўная памяць |
SCL | серыйная лінія гадзін |
ПДР | серыйныя дадзеныя |
СПАД | аднафатонны лавінны дыёд |
ToF | Час палёту |
УЛД | Ultra lite драйвер |
VCSEL | павярхоўны дыёд з вертыкальнай паражніной |
VHV | вельмі высокі абtage |
Xtalk | крыжаваныя перашкоды |
Функцыянальнае апісанне
Сістэма скончанаview
Сістэма VL53L7CX складаецца з апаратнага модуля і ультрапалегчанага драйвера (VL53L7CX ULD), якія працуюць на хасце (гл. малюнак ніжэй). Апаратны модуль змяшчае датчык ToF. STMicroelectronics пастаўляе праграмны драйвер, які ў гэтым дакуменце называецца «драйвер». У гэтым дакуменце апісваюцца функцыі драйвера, якія даступны хосту. Гэтыя функцыі кіруюць датчыкам і атрымліваюць даныя дыяпазону.
Малюнак 2. Сістэма VL53L7CX скончанаview
Эфектыўнае арыентаванне
Модуль уключае ў сябе аб'ектыў над дыяфрагмай Rx, які перагортвае (гарызантальна і вертыкальна) зробленае выява мэты. Такім чынам, зона, вызначаная як зона 0, у левым ніжнім куце масіва SPAD, асвятляецца мішэнню, размешчанай у правым верхнім баку сцэны.
Малюнак 3. VL53L7CX эфектыўнае арыентаванне
Схемы і канфігурацыя I²C
Сувязь паміж драйверам і ўбудаваным праграмным забеспячэннем апрацоўваецца I²C з магчымасцю працы да 1 МГц. Ажыццяўленне патрабуе падцягванняў па лініях SCL і SDA. Для атрымання дадатковай інфармацыі звярніцеся да табліцы дадзеных VL53L7CX. Прылада VL53L7CX мае стандартны I²C-адрас 0x52. Тым не менш, можна змяніць адрас па змаўчанні, каб пазбегнуць канфліктаў з іншымі прыладамі, або палегчыць даданне некалькіх модуляў VL53L7CX у сістэму для большага сістэмнага агляду. Адрас I²C можна змяніць з дапамогай функцыі vl53l7cx_set_i2c_address().
Малюнак 4. Некалькі датчыкаў на шыне I²C
Каб дазволіць змяняць адрас I²C прылады, не закранаючы іншых на шыне I²C, важна адключыць сувязь I²C прылад, якія не мяняюцца. Працэдура наступная:
- Уключыце сістэму як звычайна.
- Пацягніце ўніз штыфт LPn прылады, адрас якой не будзе зменены.
- Падцягніце штыфт LPn прылады, у якой зменены адрас I²C.
- Запраграмуйце адрас I²C для прылады з дапамогай функцыі set_i2c_address().
- Выцягніце штыфт LPn прылады, якое не перапраграмуецца.
Цяпер усе прылады павінны быць даступныя на шыне I²C. Паўтарыце апісаныя вышэй дзеянні для ўсіх прылад VL53L7CX у сістэме, якім патрабуецца новы I²C-адрас.
Змест пакета і паток даных
Архітэктура і змест драйвера
Пакет VL53L7CX ULD складаецца з чатырох тэчак. Драйвер знаходзіцца ў тэчцы /
VL53L7CX_ULD_API.
Драйвер складаецца з абавязковых і дадатковых fileс. Дадаткова fileз'яўляюцца plugins выкарыстоўваецца для пашырэння функцый ULD. Кожны плагін пачынаецца са слова «vl53l7cx_plugin» (напрыклад, vl53l7cx_plugin_xtalk.h). Калі карыстальнік не хоча прапанаванага plugins, іх можна выдаліць без уплыву на іншыя функцыі драйвера. Наступны малюнак уяўляе сабой абавязковы files і неабавязковы plugins.
Малюнак 5. Архітэктура драйвера
Карыстальнік таксама павінен рэалізаваць два files знаходзіцца ў тэчцы /Platform. Прапанаваная платформа з'яўляецца пустой абалонкай і павінна быць напоўнена спецыяльнымі функцыямі.
Заўвага: Платформа. ч file змяшчае абавязковыя макрасы для выкарыстання ULD. Усе file змест з'яўляецца абавязковым для правільнага выкарыстання ULD
Паток каліброўкі
Перакрыжаваныя перашкоды (Xtalk) вызначаюцца як колькасць сігналу, атрыманага на масіве SPAD, які абумоўлены святлом VCSEL
адлюстраванне ўнутры ахоўнага акна (вечкавага шкла), дададзенага ў верхняй частцы модуля. Модуль VL53L7CX самакалібруецца і можа выкарыстоўвацца без дадатковай каліброўкі.
Каліброўка крыжаваных перашкод можа спатрэбіцца, калі модуль абаронены вечкам. VL53L7CX неўспрымальны да
перакрыжаваныя перашкоды больш за 60 см дзякуючы алгарытму гістаграмы. Аднак на кароткіх адлегласцях ніжэй за 60 см Xtalk можа быць большым, чым рэальны зваротны сігнал. Гэта дае памылковае счытванне мэты або прымушае мэты выглядаць бліжэй, чым яны ёсць на самой справе. Усе функцыі каліброўкі перакрыжаваных перашкод уключаны ў плагін Xtalk (дадаткова). Карыстальнік павінен выкарыстоўваць file 'vl53l7cx_plugin_xtalk'.
Перакрыжаваныя перашкоды можна адкалібраваць адзін раз, а дадзеныя можна захаваць, каб потым выкарыстоўваць іх паўторна. Патрабуецца мэта на фіксаванай адлегласці з вядомым каэфіцыентам адлюстравання. Мінімальная неабходная дыстанцыя складае 600 мм, і мішэнь павінна пакрываць увесь агляд. У залежнасці ад налад, карыстальнік можа змяніць налады для адаптацыі каліброўкі перакрыжаваных перашкод, як прапануецца ў наступнай табліцы.
Табліца 1. Даступныя налады для каліброўкі
Абстаноўка | Мін | Прапанавана STMicroelectronics | Макс |
Адлегласць [мм] | 600 | 600 | 3000 |
Колькасць сampлес | 1 | 4 | 16 |
Каэфіцыент адлюстравання [%] | 1 | 3 | 99 |
Заўвага: Павелічэнне колькасці сamples павялічвае дакладнасць, але таксама павялічвае час на каліброўку. Час адносна колькасці сamples з'яўляецца лінейным, і значэнні ідуць за прыблізным тайм-аўтам:
- 1 сample ≈ 1 секунда
- 4 сampменш ≈ 2.5 секунды
- 16 сampменш ≈ 8.5 секунды
Каліброўка выконваецца з дапамогай функцыі vl53l7cx_calibrate_xtalk(). Гэта функцыя можа быць выкарыстана ў любы час. Аднак спачатку трэба ініцыялізаваць датчык. На наступным малюнку паказаны паток каліброўкі крыжаваных перашкод.
Малюнак 6. Паток каліброўкі крыжаваных перашкод
Далёкая плынь
На наступным малюнку паказаны паток дыяпазону, які выкарыстоўваецца для атрымання вымярэнняў. Каліброўка Xtalk і дадатковыя выклікі функцый павінны быць выкарыстаны перад пачаткам сеансу вызначэння дыяпазону. Функцыі атрымання/усталявання не могуць быць выкарыстаны падчас сеанса вызначэння дыяпазону, а праграмаванне "на ляту" не падтрымліваецца.
Малюнак 7. Рэгуляванне патоку з выкарыстаннем VL53L7CX
Даступныя функцыі
API VL53L7CX ULD уключае некалькі функцый, якія дазваляюць карыстачу наладжваць датчык у залежнасці ад варыянту выкарыстання. Усе функцыі, даступныя для драйвера, апісаны ў наступных раздзелах.
Ініцыялізацыя
Перад выкарыстаннем датчыка VL53L7CX неабходна правесці ініцыялізацыю. Гэтая аперацыя патрабуе ад карыстальніка:
- Уключыце сілкаванне датчыка (кантакты VDDIO, AVDD, LPn усталяваны ў High, а кантакт I2C_RST у 0)
- Выклічце функцыю vl53l7cx_init(). Функцыя капіюе прашыўку (~84 Кбайт) у модуль. Гэта робіцца шляхам загрузкі кода праз інтэрфейс I²C і выканання працэдуры загрузкі для завяршэння ініцыялізацыі.
Кіраванне скідам датчыка
Каб скінуць налады прылады, неабходна пераключыць наступныя кантакты:
- Усталюйце кантакты VDDIO, AVDD і LPn на нізкі ўзровень.
- Пачакайце 10 мс.
- Усталюйце кантакты VDDIO, AVDD і LPn у высокі ўзровень.
Заўвага: Пераключэнне толькі штыфта I2C_RST скідае сувязь I²C.
дазвол
Разрозненне адпавядае колькасці даступных зон. Датчык VL53L7CX мае два магчымых дазволу: 4×4 (16 зон) і 8×8 (64 зоны). Па змаўчанні датчык запраграмаваны ў фармаце 4×4. Функцыя vl53l7cx_set_resolution() дазваляе карыстальніку змяняць дазвол. Паколькі частата вымярэння дыяпазону залежыць ад раздзялення, гэту функцыю неабходна выкарыстоўваць перад абнаўленнем частоты вызначэння дыяпазону. Больш за тое, змяненне раздзялення таксама павялічвае памер трафіку на шыне I²C пры чытанні вынікаў.
Частата дыяпазону
Частата дыяпазону можа выкарыстоўвацца для змены частаты вымярэння. Паколькі максімальная частата адрозніваецца
паміж дазволамі 4×4 і 8×8, гэтую функцыю неабходна выкарыстоўваць пасля выбару дазволу. Мінімальнае і максімальнае дазволеныя значэнні пералічаны ў наступнай табліцы.
Табліца 2. Мінімальныя і максімальныя частоты дыяпазону
дазвол | Мінімальная частата дыяпазону [Гц] | Максімальная частата дыяпазону [Гц] |
4×4 | 1 | 60 |
8×8 | 1 | 15 |
Частату дыяпазону можна абнавіць з дапамогай функцыі vl53l7cx_set_ranging_frequency_hz(). Па змаўчанні частата дыяпазону ўстаноўлена на 1 Гц.
Рэжым дальнасці
Рэжым дыяпазону дазваляе карыстальніку выбіраць паміж дыяпазонам з высокай прадукцыйнасцю або нізкім энергаспажываннем. Ёсць два прапанаваных рэжыму:
- Бесперапынна: прылада пастаянна захоплівае кадры з частатой дыяпазону, вызначанай карыстальнікам. VCSEL уключаны на працягу ўсяго дыяпазону, так што максімальная адлегласць і імунітэт навакольнага асяроддзя лепш. Гэты рэжым рэкамендуецца для хуткіх вымярэнняў далёкасці або высокай прадукцыйнасці.
- Аўтаномны: гэта рэжым па змаўчанні. Прылада бесперапынна захоплівае кадры з дыяпазоннай частатой
вызначаецца карыстальнікам. VCSEL уключаны на працягу перыяду, вызначанага карыстальнікам з дапамогай функцыі vl53l7cx_set_integration_time_ms(). Паколькі VCSEL не заўсёды ўключаны, энергаспажыванне зніжаецца. Перавагі больш відавочныя з паменшанай частатой дыяпазону. Гэты рэжым рэкамендуецца для прыкладанняў з нізкім энергаспажываннем.
Рэжым дыяпазону можна змяніць з дапамогай функцыі vl53l7cx_set_ranging_mode().
Час інтэграцыі
Час інтэграцыі - гэта функцыя, даступная толькі ў рэжыме аўтаномнага вызначэння дальнасці (гл. Раздзел 4.5: Вызначэнне дальнасці
рэжым). Гэта дазваляе карыстальніку змяняць час, калі VCSEL уключаны. Змена часу інтэграцыі, калі дыяпазон
усталяваны бесперапынны рэжым не мае ніякага эфекту. Час інтэграцыі па змаўчанні ўсталяваны на 5 мс. Эфект часу інтэграцыі адрозніваецца для дазволаў 4×4 і 8×8. Раздзяленне 4 × 4 складаецца з аднаго часу інтэгравання, а дазвол 8 × 8 складаецца з чатырох часоў інтэгравання. Наступныя лічбы ўяўляюць выпраменьванне VCSEL для абодвух дазволаў.
Малюнак 8. Час інтэграцыі для аўтаномнага 4×4
Малюнак 9. Час інтэграцыі для аўтаномнага 8×8
Сума ўсіх часоў інтэгравання + 1 мс накладных выдаткаў павінна быць меншай за перыяд вымярэння. У адваротным выпадку перыяд дыяпазону аўтаматычна павялічваецца, каб адпавядаць значэнню часу інтэгравання.
Рэжымы магутнасці
Рэжымы магутнасці можна выкарыстоўваць для зніжэння спажывання энергіі, калі прылада не выкарыстоўваецца. VL53L7CX можа працаваць у адным з наступных рэжымаў харчавання:
- Прачынанне: прылада знаходзіцца ў рэжыме чакання HP (высокая магутнасць), чаканне інструкцый.
- Сон: прылада знаходзіцца ў рэжыме прастою LP (нізкая магутнасць), у стане нізкай магутнасці. Прыладай нельга карыстацца, пакуль не пераведзена ў рэжым абуджэння. Гэты рэжым захоўвае прашыўку і канфігурацыю.
Рэжым харчавання можна змяніць з дапамогай функцыі vl53l7cx_set_power_mode(). Рэжым па змаўчанні - абуджэнне.
Заўвага: Калі карыстальнік хоча змяніць рэжым сілкавання, прылада не павінна знаходзіцца ў стане дыяпазону.
Точилка
Сігнал, які вяртаецца ад мэты, не з'яўляецца чыстым імпульсам з вострымі бакамі. Краю нахіляюцца і могуць паўплываць на адлегласці, якія паведамляюцца ў сумежных зонах. Станок для завострывання выкарыстоўваецца для выдалення часткі або ўсяго сігналу, выкліканага заслонай блікаў.
Былыample, паказанае на наступным малюнку, уяўляе сабой блізкую мішэнь на адлегласці 100 мм з цэнтрам у поле зроку і іншую мішэнь, якая знаходзіцца далей ззаду на адлегласці 500 мм. У залежнасці ад значэння тачылкі блізкая мэта можа з'явіцца ў большай колькасці зон, чым рэальная.
Малюнак 10. Exampсцэны з выкарыстаннем некалькіх значэнняў рэзкасці
Тачылку можна змяніць з дапамогай функцыі vl53l7cx_set_sharpener_percent(). Дапушчальныя значэнні ад 0% да 99%. Значэнне па змаўчанні - 5%.
Мэтавы парадак
VL53L7CX можа вымяраць некалькі мэтаў у зоне. Дзякуючы апрацоўцы гістаграмы гаспадар можа
выбраць парадак паведамленых мэтаў. Ёсць два варыянты:
- Бліжэйшая: Бліжэйшая мэта - гэта першая, пра якую паведамляецца
- Самая моцная: самая моцная мішэнь - першая, пра якую паведамляецца
Мэтавы парадак можна змяніць з дапамогай функцыі vl53l7cx_set_target_order(). Парадак па змаўчанні - наймацнейшы. Былыample на наступным малюнку ўяўляе сабой выяўленне двух мэтаў. Адзін на 100 мм з нізкім каэфіцыентам адлюстравання, а другі на 700 мм з высокім каэфіцыентам адлюстравання.
Малюнак 11. Exampле гістаграмы з двума мэтамі
Некалькі мэтаў на зону
VL53L7CX можа вымяраць да чатырох мішэняў на зону. Карыстальнік можа наладзіць колькасць мэтаў, якія вяртаюцца датчыкам.
Заўвага: Мінімальная адлегласць паміж двума выяўленымі мэтамі складае 600 мм. Выбар немагчымы з драйвера; гэта павінна быць зроблена ў форме платформы. ч' file. Для макраса VL53L7CX_NB_ TARGET_PER_ZONE неабходна ўсталяваць значэнне ад 1 да 4. Парадак мэты, апісаны ў Раздзеле 4.9: Парадак мэты непасрэдна ўплывае на парадак выяўленай мэты. Па змаўчанні датчык выдае максімум адну мэту на зону.
Заўвага: Павелічэнне колькасці мэтаў на зону павялічвае неабходны памер аператыўнай памяці.
Маржа Xtalk
Маржа Xtalk - гэта дадатковая функцыя, даступная толькі пры выкарыстанні плагіна Xtalk. .c і .f fileНеабходна выкарыстоўваць 'vl53l7cx_plugin_xtalk'.
Запас выкарыстоўваецца для змены парога выяўлення, калі на верхняй частцы датчыка знаходзіцца вечка. Парог можа быць павялічаны, каб гарантаваць, што покрыўнае шкло ніколі не будзе выяўлена, пасля ўстаноўкі дадзеных каліброўкі перакрыжаваных перашкод. Напрыкладample, карыстальнік можа запусціць каліброўку крыжаваных перашкод на адной прыладзе і паўторна выкарыстоўваць тыя ж дадзеныя каліброўкі для ўсіх іншых прылад. Паля Xtalk можна выкарыстоўваць для налады карэкцыі перакрыжаваных перашкод. На малюнку ніжэй паказана маржа Xtalk.
Малюнак 12. Маржа Xtalk
Парогі выяўлення
У дадатак да звычайных магчымасцей вызначэння дальнасці, датчык можна запраграмаваць на выяўленне аб'екта па пэўных загадзя зададзеным крытэрам. Гэта функцыя даступная з дапамогай убудовы «Парогі выяўлення», якая з'яўляецца опцыяй, якая па змаўчанні не ўключана ў API. The fileтрэба выкарыстоўваць 'vl53l7cx_plugin_detection_thresholds'. Функцыя можа выкарыстоўвацца для запуску перапынення на кантакт A3 (INT), калі выконваюцца ўмовы, вызначаныя карыстальнікам. Ёсць тры магчымыя канфігурацыі:
- Раздзяленне 4×4: выкарыстанне аднаго парога на зону (усяго 16 парогаў)
- Раздзяленне 4×4: выкарыстанне двух парогаў на зону (усяго 32 парогі)
- Раздзяленне 8×8: выкарыстанне аднаго парога на зону (усяго 64 парогаў)
Незалежна ад выкарыстоўванай канфігурацыі, працэдура стварэння парогавых значэнняў і памер аператыўнай памяці аднолькавыя. Для кожнай парогавай камбінацыі неабходна запоўніць некалькі палёў:
- Ідэнтыфікатар зоны: ідэнтыфікатар абранай зоны (гл. Раздзел 2.2: Эфектыўная арыентацыя)
- Вымярэнне: вымярэнне для лоўлі (адлегласць, сігнал, колькасць SPAD, ...)
- Тып: вокны вымярэнняў (у вокнах, па-за вокнамі, ніжэй нізкага парога, ...)
- Нізкі парог: карыстальнік з нізкім парогам для запуску. Карыстальніку не трэба ўсталёўваць фармат, ён аўтаматычна апрацоўваецца API.
- Высокі парог: карыстальнік з высокім парогам для трыгера. Карыстальніку не трэба ўсталёўваць фармат; гэта аўтаматычна апрацоўваецца API.
- Матэматычная аперацыя: выкарыстоўваецца толькі для 4×4 – 2 парогавыя камбінацыі на зону. Карыстальнік можа ўсталяваць камбінацыю з дапамогай некалькіх парогаў у адной зоне.
Індыкатар руху
Датчык VL53L7CX мае ўбудаваную функцыю прашыўкі, якая дазваляе выяўляць рух у сцэне. Рух
індыкатар вылічваецца паміж паслядоўнымі кадрамі. Гэтая опцыя даступная з дапамогай плагіна "vl53l7cx_plugin_motion_indicator".
Індыкатар руху ініцыялізуецца з дапамогай функцыі vl53l7cx_motion_indicator_init(). Каб памяняць датчык
дазвол, абнавіце дазвол індыкатара руху з дапамогай спецыяльнай функцыі: vl53l7cx_motion_indicator_set_resolution().
Карыстальнік таксама можа змяняць мінімальную і максімальную адлегласці для выяўлення руху. Розніца паміж мінімальнай і максімальнай адлегласцямі не можа перавышаць 1500 мм. Па змаўчанні адлегласці ініцыялізуюцца значэннямі ад 400 мм да 1500 мм.
Вынікі захоўваюцца ў полі «motion_Indicator». У гэтым полі масіў 'motion' дае значэнне, якое змяшчае
інтэнсіўнасць руху на зону. Высокае значэнне паказвае на вялікую варыяцыю руху паміж кадрамі. Тыповы рух дае значэнне ад 100 да 500. Гэтая адчувальнасць залежыць ад часу інтэгравання, адлегласці да мэты і каэфіцыента адлюстравання ад мэты.
Ідэальнае спалучэнне для прыкладанняў з нізкім энергаспажываннем - выкарыстанне індыкатара руху з аўтаномным рэжымам вызначэння дыяпазону і парогаў выяўлення, запраграмаваных на рух. Гэта дазваляе выяўляць змены руху ў поле зроку з мінімальным спажываннем энергіі.
Перыядычная тэмпературная кампенсацыя
На прадукцыйнасць вымярэння далёкасці ўплываюць перапады тэмператур. Датчык VL53L7CX убудоўвае тэмпературу
кампенсацыя, якая калібруецца адзін раз пры запуску трансляцыі. Аднак, калі тэмпература развіваецца, то
кампенсацыя можа не адпавядаць новай тэмпературы. Каб пазбегнуць гэтай праблемы, кліент можа перыядычна запускаць тэмпературную кампенсацыю з дапамогай аўтаматычнага VHV. Перыядычная каліброўка тэмпературы займае некалькі мілісекунд. Карыстальнік можа вызначыць перыяд. Каб выкарыстоўваць гэтую функцыю, кліент павінен:
- Выклічце функцыю vl53l7cx_set_VHV_repeat_count().
- Затым увядзіце ў якасці аргументу колькасць кадраў паміж кожнай новай каліброўкай.
Калі аргумент роўны 0, кампенсацыя адключана.
Ранжыраванне вынікаў
Даступныя дадзеныя
Шырокі спіс даных аб мэтах і навакольным асяроддзі можа быць выведзены падчас дзеянняў па дальнамернасці. У наступнай табліцы апісаны параметры, даступныя для карыстальніка.
Табліца 3. Даступны выхад з выкарыстаннем датчыка VL53L7CX
элемент | Колькасць байтаў (RAM) | Адзінка | Апісанне |
Эмбіент на SPAD | 256 | Kcps/SPAD | Вымярэнне хуткасці навакольнага сігналу, выкананае на масіве SPAD, без актыўнага выпраменьвання фатонаў, для вымярэння хуткасці навакольнага сігналу з-за шуму. |
Колькасць выяўленых мэтаў | 64 | Няма | Колькасць выяўленых мэтаў у бягучай зоне. Гэта значэнне павінна быць першым для праверкі, каб ведаць сапраўднасць вымярэння. |
Колькасць уключаных SPAD | 256 | Няма | Колькасць SPAD, уключаных для бягучага вымярэння. Далёкая або нізкая святлоадбівальная мэта актывуе больш SPAD. |
Сігнал на SPAD | Запраграмавана 256 мішэняў x nb | Kcps/SPAD | Колькасць фатонаў, вымераная падчас імпульсу VCSEL. |
Дыяпазон сігма | Запраграмавана 128 мішэняў x nb | Міліметр | Сігма-ацэнка шуму на справаздачнай адлегласці да мэты. |
Дыстанцыя | Запраграмавана 128 мішэняў x nb | Міліметр | Далёкасць мэты |
Стан мэты | Запраграмавана 64 мішэняў x nb | Няма | Сапраўднасць вымярэнняў. Глядзіце Раздзел 5.5: Вынікі інтэрпрэтацыя для атрымання дадатковай інфармацыі. |
Адлюстраванне | Запраграмавана 64 колькасці мішэняў | Працэнт | Разліковае адлюстраванне мэты ў працэнтах |
Індыкатар руху | 140 | Няма | Структура, якая змяшчае вынікі індыкатара руху. Поле "рух" змяшчае інтэнсіўнасць руху. |
Заўвага: Для некалькіх элементаў (сігнал на спад, сігма, ...) доступ да даных адрозніваецца, калі карыстальнік запраграмаваў больш чым адну мэту на зону (гл. Раздзел 4.10: Некалькі мэтаў на зону). Глядзіце прample коды для атрымання дадатковай інфармацыі.
Наладзіць выбар выхаду
Па змаўчанні ўсе выхады VL53L7CX уключаны. Пры неабходнасці карыстальнік можа адключыць выхады некаторых датчыкаў. Адключэнне вымярэнняў недаступна ў драйверы; ён павінен быць выкананы ў форме платформы. ч' file. Карыстальнік можа аб'явіць наступныя макрасы, каб адключыць выхады:
#вызначыць VL53L7CX_DISABLE_AMBIENT_PER_SPAD
#вызначыць VL53L7CX_DISABLE_NB_SPADS_ENABLED
#вызначыць VL53L7CX_DISABLE_NB_TARGET_DETECTED
#вызначыць VL53L7CX_DISABLE_SIGNAL_PER_SPAD
#вызначыць VL53L7CX_DISABLE_RANGE_SIGMA_MM
#вызначыць VL53L7CX_DISABLE_DISTANCE_MM
#define VL53L7CX_DISABLE_TARGET_STATUS
#вызначыць VL53L7CX_DISABLE_REFLECTANCE_PERCENT
#вызначыць VL53L7CX_DISABLE_MOTION_INDICATOR
Такім чынам, палі не аб'яўляюцца ў структуры вынікаў, і даныя не перадаюцца на хост. Паменшаны памер аператыўнай памяці і I²C. Для забеспячэння ўзгодненасці дадзеных ST заўсёды рэкамендуе трымаць уключанымі «колькасць выяўленых мэтаў» і «статус мэты». Гэта фільтруе вымярэнні ў залежнасці ад стану мэты (гл. Раздзел 5.5: Інтэрпрэтацыя вынікаў).
Атрыманне вынікаў дыяпазону
Падчас сеансу ранжыравання ёсць два спосабы даведацца, ці даступныя новыя даныя ранжыравання:
- Рэжым апытання: бесперапынна выкарыстоўвае функцыю vl53l7cx_check_data_ready(). Ён выяўляе новы падлік патоку, вернуты датчыкам.
- Рэжым перапынення: чакае перапынення, узнятага на выснове A3 (GPIO1). Перапыненне аўтаматычна ачышчаецца праз ~100 мкс.
Калі новыя даныя гатовыя, вынікі можна прачытаць з дапамогай функцыі vl53l7cx_get_ranging_data(). Ён вяртае абноўленую структуру, якая змяшчае ўсе выбраныя вынікі. Паколькі прылада з'яўляецца асінхроннай, няма перапынкаў, якія трэба ачысціць, каб працягнуць сеанс вызначэння дыяпазону. Гэтая функцыя даступная як для бесперапыннага, так і для аўтаномнага рэжымаў вызначэння дыяпазону.
Выкарыстанне неапрацаванага фармату прашыўкі
Пасля перадачы даных дальнасці праз I²C адбываецца пераўтварэнне паміж фарматам прашыўкі і фарматам хаста. Гэтая аперацыя звычайна выконваецца, каб атрымаць адлегласць дыяпазону ў міліметрах у якасці вываду датчыка па змаўчанні. Калі карыстальнік хоча выкарыстоўваць фармат прашыўкі, у платформе павінен быць вызначаны наступны макрас file: VL53L7CX
#define VL53L7CX_USE_RAW_FORMAT
Інтэрпрэтацыя вынікаў
Дадзеныя, якія вяртае VL53L7CX, можна адфільтраваць з улікам стану мэты. Статус паказвае сапраўднасць вымярэння. Поўны спіс статусаў апісаны ў наступнай табліцы.
Табліца 4. Спіс даступных мэтавых статусаў
Стан мэты | Апісанне |
0 | Дадзеныя аб дыяпазоне не абнаўляюцца |
1 | Занадта нізкая хуткасць сігналу на масіве SPAD |
2 | Мэтавая фаза |
3 | Сігма-ацэнка занадта высокая |
4 | Мэтавая ўзгодненасць не атрымалася |
5 | Дыяпазон сапраўдны |
6 | Абгортванне не выконваецца (звычайна першы дыяпазон) |
7 | Збой узгодненасці хуткасці |
8 | Хуткасць сігналу занадта нізкая для бягучай мэты |
9 | Дапушчальны дыяпазон пры вялікім пульсе (магчыма, з-за аб'яднанай мэты) |
10 | Далёкасць сапраўдная, але на папярэдняй дыстанцыі мэта не выяўлена |
11 | Памылка ўзгодненасці вымярэнняў |
12 | Мэта размыта іншай з-за завострывання |
13 | Мэта выяўлена, але дадзеныя супярэчлівыя. Часта здараецца з другараднымі мэтамі. |
255 | Мэта не выяўлена (толькі калі ўключана колькасць выяўленых мэтаў) |
Каб мець узгодненыя даныя, карыстальнік павінен адфільтраваць несапраўдны мэтавы статус. Каб даць рэйтынг упэўненасці, мэта са статусам 5 лічыцца 100% сапраўднай. Статус 6 або 9 можна разглядаць з упэўненасцю 50%. Усе астатнія статусы знаходзяцца ніжэй за ўзровень даверу 50%.
Памылкі драйвера
Калі ўзнікае памылка пры выкарыстанні датчыка VL53L7CX, драйвер вяртае пэўную памылку. У наступнай табліцы пералічаны магчымыя памылкі.
Табліца 5. Спіс памылак, даступных пры выкарыстанні драйвера
Стан мэты | Апісанне |
0 | Няма памылкі |
127 | Карыстальнік запраграмаваў няправільныя налады (невядомая раздзяляльнасць, частата дыяпазону занадта высокая, ...) |
255 | Асноўная памылка. Звычайна памылка тайм-аўту з-за памылкі I²C. |
іншае | Камбінацыя некалькіх памылак, апісаная вышэй |
Заўвага: Хост можа рэалізаваць больш кодаў памылак з дапамогай платформы files.
Гісторыя версій
Табліца 6. Гісторыя пераглядаў дакумента
Дата | Версія | Змены |
02 жніўня 2022 г | 1 | Першапачатковы выпуск |
02-2022 верасня | 2 | Абноўлены Раздзел Уводзіны Дададзена заўвага аб мінімальнай адлегласці паміж мэтамі Раздзел 4.10: Множныя мэтаў на зону |
21-лютага-2024 | 3 | Дададзены VHV (вельмі высокая гучнасцьtagд) да Раздзел 1: Акронімы і абрэвіятуры. Дададзена Раздзел 4.14: Перыядычная тэмпературная кампенсацыя |
Падтрымка кліентаў
ВАЖНАЯ ЗАЎВАГА – УВАЖЛІВА ЧЫТАЙЦЕ
STMicroelectronics NV і яе даччыныя кампаніі («ST») пакідаюць за сабой права ўносіць змены, выпраўленні, удасканаленні, мадыфікацыі і паляпшэнні ў прадукты ST і/або ў гэты дакумент у любы час без папярэдняга паведамлення. Пакупнікі павінны атрымаць самую актуальную інфармацыю аб прадуктах ST, перш чым рабіць заказы. Прадукцыя ST прадаецца ў адпаведнасці з умовамі продажу ST, якія дзейнічаюць на момант пацвярджэння замовы.
Пакупнікі нясуць поўную адказнасць за выбар, выбар і выкарыстанне прадуктаў ST, і ST не нясе адказнасці за дапамогу ў прымяненні або дызайн прадуктаў пакупнікоў.
ST тут не прадастаўляе ніякіх ліцэнзій, відавочных або пэўных, на права інтэлектуальнай уласнасці.
Перапродаж прадуктаў ST з умовамі, адрознымі ад інфармацыі, выкладзенай у гэтым дакуменце, прыводзіць да анулявання любой гарантыі, прадастаўленай ST на такі прадукт.
ST і лагатып ST з'яўляюцца гандлёвымі маркамі ST. Для атрымання дадатковай інфармацыі аб гандлёвых марках ST звярніцеся да www.st.com/trademarks. Усе іншыя назвы прадуктаў і паслуг з'яўляюцца ўласнасцю іх адпаведных уладальнікаў.
Інфармацыя ў гэтым дакуменце замяняе інфармацыю, якая была прадстаўлена ў папярэдніх версіях гэтага дакумента.
© 2024 STMicroelectronics – Усе правы абаронены
Дакументы / Рэсурсы
![]() |
STMicroelectronics VL53L7CX Шматзонны датчык дыяпазону Time Of Flight [pdfКіраўніцтва карыстальніка VL53L7CX Час палёту шматзонны датчык дыяпазону, VL53L7CX, час палёту шматзонны датчык дыяпазону, палётны шматзонны датчык дыяпазону, шматзонны датчык дыяпазону, датчык дыяпазону |