Vývoj multipixelového optického snímacího subsystému je díky složitosti zdlouhavý proces. Tento článek nám přiblíží základní principy ToF a poté představí optickou vývojovou sadu od společnosti Broadcom, která nám usnadní vytvoření prototypu pro přesné měření vzdálenosti v 1D a 3D.
Základy optické metody ToF
Optická metoda ToF, která se používá k získání přesné vzdálenosti, umožňuje měření na základě doby potřebné pro průchod světla vzduchem. Existují dvě metody ToF - přímá a nepřímá. V přímé metodě ToF se měří čas mezi vysíláním a příjmem konkrétního světelného pulsu senzorem ToF pomocí rovnice 1:
Kde:
c 0 = rychlost světla ve vakuu
∆T = doba uplynulá mezi vysíláním a příjmem
Přímá metoda vyžaduje dostatečný výkon vysílače i přijímače, vysoký poměr signál / šum a přesnou detekci hrany pulzu.
Naproti tomu nepřímá metoda ToF využívá modulovanou spojitou vlnu a měří fázový rozdíl mezi vysílanými a přijímanými signály podle rovnice 2:
Kde:
c 0 = rychlost světla ve vakuu
fmod = frekvence laserové modulace
∆φ = stanovený fázový rozdíl
Nepřímá metoda nemá takové nároky na výkon vysílače/přijímače a neklade důraz na tvar pulsu. Díky tomu může být obvod jednodušší.
Přímá i nepřímá metoda vyžaduje přesné řízení signálů vysílače a přijímače. Pro návrh optického snímání pomocí metody ToF lze využít integrované senzory, které mají jak vysílač tak i přijímač v jedné součástce. Při výběru integrovaného senzoru se vždy volí kompromis mezi spotřebou energie, dosahem, přesností a rychlostí.
Nepřímý ToF modul AFBR-S50MV85G od Broadcomu je navržen speciálně pro střední vzdálenost při zachování minimální velikosti a minimální spotřeby energie. K dispozici je vývojová sada AFBR-S50MV85G-EK, která zjednoduší implementaci 3D snímání pomocí ToF.
Jak integrovaný modul zjednodušuje měření vzdálenosti pomocí ToF
Modul AFBR-S50MV85G byl vyvinutý pro průmyslové aplikace a poskytuje kompletní optické řešení snímání ToF v jediném pouzdře. Uvnitř pouzdra se nachází 850 nm infračervený laser s vertikální dutinou (VCSEL), šestihranná 32 pixelová snímací matrice, čočka pro VCSEL a integrovaný obvod ASIC.
Vysílač osvětluje cílový objekt, a to způsobí, že určitý počet pixelů ve snímací matrici detekuje odražený IR signál. V základním provozu to umožňuje modulu přesné měření vzdálenosti od bílých, černých, barevných, kovových a reflexních povrchů – a to i na přímém slunci – díky integrovaným filtrům pro potlačení okolního světla. Automatická kompenzace chyb umožňuje měření prakticky bez spodní hranice vzdálenosti. Kombinace IR přísvitu a snímací matrice umožňuje zjistit následující informace o objektu – pohyb a jeho směr, rychlost a úhel náklonu (obrázek 1).
Obrázek 1: Pomocí dat získaných ze snímací matice 8 x 4 pixelů modulu AFBR-S50MV85G lze měřit charakteristiky pohybu objektů. (Zdroj obrázku: Broadcom)
Vestavěný ASIC modul poskytuje všechny obvody potřebné pro řízení světelného zdroje VCSEL, zachycení analogového signálu ze snímací matice a úpravu digitálního signálu (obrázek 2).
Obrázek 2: ASIC integrovaný v modulu AFBR-S50MV85G obsahuje všechny obvody potřebné k řízení světelného zdroje VCSEL, pro zpracování přijatých signálů ze snímací matrice a přenos dat přes sběrnici SPI. (Zdroj obrázku: Broadcom)
Obvod ASIC je napájen 5V a jeho integrovaný kalibrovaný a teplotně kompenzovaný RC oscilátor a fázový závěs PLL poskytují všechny požadované hodinové signály. Díky tomu lze modul připojit k mikrokontroleru a je k tomu potřeba jen několik externích komponent. Rozhraní pro propojení s mikrokontrolerem je jednoduché. Skládá se z univerzálního GPIO pinu pro signál přerušení a signálů pro SPI (obrázek 3).
Obrázek 3: Modul AFBR-S50MV85G vyžaduje pouze MCU a několik dalších komponent pro implementaci kompletního systému snímání ToF. (Zdroj obrázku: Broadcom)
Tento hardware doplňuje softwarový driver ToF od společnosti Broadcom. Zatímco modul zpracovává sběr optických dat pro aplikace měření vzdálenosti, software ovladače Broadcom ToF, který je součástí sady AFBR-S50 SDK, provádí všechny kroky hardwarové konfigurace, kalibrace a měření. Během měření software vypočítává hodnoty vzdálenosti i amplitudy jednotlivých pixelů.
Jak rychle vyvinout aplikaci pro měření vzdálenosti
AFBR-S50 SDK v kombinaci s vývojovou sadou AFBR-S50MV85G-EK nabízí komplexní platformu pro ryclé vytvoření prototypu. Sada se dodává s deskou obsahující modul AFBR-S50MV85G, vývojovou desku FRDM-KL46Z NXP založenou na Arm Cortex-M0+ a mini-USB kabel pro připojení sestavy k notebooku (obrázek 4).
Obrázek 4: Vývojová sada AFBR-S50MV85G-EK a související software poskytuje kompletní platformu pro vytvoření prototypu s měřením vzdálenosti pomocí ToF. (Zdroj obrázku: Broadcom)
Měření vzdálenosti pomocí vývojové sady vyžaduje pouze několik kroků. Po stažení AFBR-S50 SDK se spustí průvodce, který nás provede nastavením a rychlou instalací. Pak je nutné spustit softwarovou aplikaci Broadcom AFBR-S50 Explorer, která je součástí balíčku SDK. Software se připojí k vývojové desce AFBR-S50 přes rozhraní USB, přijme naměřená data prostřednictvím driveru běžícího na MCU desky NXP a umožní zobrazit výsledky v 1D nebo 3D grafu (obrázek 5).
Obrázek 5: Software AFBR-S50 Explorer zjednodušuje vyhodnocování měření prostřednictvím 3D grafů zobrazujících amplitudu přijatého osvětlení pro každý pixel v matici snímače ToF. (Zdroj obrázku: Broadcom)
Jak je znázorněno na obrázku 5, 3D graf zobrazuje hodnoty z každého pixelu, ale software poskytuje alternativní pohled, který umožňuje vidět pouze pixely považované za platné. V tomto alternativním zobrazení jsou pixely, které nesplňují definovaná kritéria, odstraněny z grafu (obrázek 6).
Obrázek 6: Se softwarem Broadcom AFBR-S50 Explorer lze prohlížet optimalizované 3D grafy. Pixely, které nesplňují předem definovaná kritéria jsou odstraněny. (Zdroj obrázku: Broadcom)
Vývojová deska slouží pro ověření metody ToF v konkrétních aplikacích. K tomu lze využít vzorový software obsažený v sadě Broadcom AFBR-S50 SDK a rychle implementovat vlastní aplikační kód.
Vytváření vlastních softwarových aplikací
Broadcom staví na efektivní architektuře založené na základní knihovně AFBR-S50 obsahující hardwarově specifický kód snímače, API rozhraní a vrstvy pro obsluhu hardware (HAL) (obrázek 7).
Obrázek 7: V operačním prostředí ToF poskytuje rozhraní API přístup ke kalibračním, měřicím a vyhodnocovacím funkcím v předkompilované knihovně. (Zdroj obrázku: Broadcom)
Jako součást balíčku AFBR-S50 SDK poskytuje Broadcom základní knihovnu, která vkládá všechna data a algoritmy potřebné ke spuštění hardware AFBR-S50MV85G. Základní knihovna poskytuje funkce pro kalibraci, měření a vyhodnocování, a to vše s minimální spotřebou energie. Základní funkce knihovny zpracovávají všechny detaily, a tak je cyklus měření přímočarý (obrázek 8).
Obrázek 8: Software AFBR-S50 SDK ToF minimalizuje zátěž procesoru pomocí přerušení a zpětných volání. (Zdroj obrázku: Broadcom)
Na začátku každého měřicího cyklu (iniciovaného periodickým přerušením časovače nebo IRQ) mikrokontroler zahájí měření a okamžitě se vrátí do klidového stavu (nebo pokračuje ve zpracování nějakého aplikačního kódu). Po dokončení měření modul AFBR-S50MV85G používá jeden pin GPIO k signalizaci přerušení, čímž probudí MCU, aby zahájil čtení dat na sběrnici SPI, než se vrátí do předchozího stavu. Po dokončení čtení dat (signalizováno IRQ pomocí SPI), MCU spustí kód pro vyhodnocení dat získaných z ToF senzoru.
Aby se zabránilo ztrátě dat měření, základní knihovna zabraňuje spuštění nového cyklu měření blokováním datové vyrovnávací paměti, dokud není zavolána vyhodnocovací rutina. Balíček AFBR-S50 SDK kombinuje předkompilované moduly základní knihovny s několika příklady software. Výsledkem je, že vývojáři mohou rychle vytvářet své vlastní aplikace pro snímání ToF na základě vzorových aplikací poskytovaných v sadě SDK.
K hardware AFBR-S50MV85G a funkcím základní knihovny AFBR-S50 lze přistupovat ve svém softwarovém kódu voláním funkcí v AFBR-S50 SDK API a specifikováním vlastních funkcí pro různá zpětná volání podporovaná základní knihovnou (viz znovu obrázek 7 ).
Broadcom poskytuje rozsáhlou dokumentaci k API a ukázkový software. Díky tomu lze rychle přizpůsobit softwarové příklady zákaznickým potřebám. Ve skutečnosti je základní cyklus měření přímočarý, jednoduše přizpůsobuje uživatelské funkce a volání API cyklu měření (viz znovu obrázek 8). Například cyklus měření, jak bylo uvedeno výše, zahrnuje tři fáze: integraci zařízení ToF, odečítání dat a vyhodnocení naměřených dat.
- Argus_TriggerMeasurement(), která asynchronně spouští jeden rámec měření
- Argus_GetStatus(), která po úspěšném dokončení měření vrátí STATUS_OK
- Argus_EvaluateData(), která vyhodnocuje užitečné informace z nezpracovaných dat měření
Broadcom demonstruje tuto základní měřicí smyčku na ukázkové aplikaci zahrnuté v knihovně SDK, která je uvedena ve výpisu 1.
Výpis 1: Ukázkový kód v AFBR-S50 SDK demonstruje základní vzor pro získávání a vyhodnocování dat ToF z modulu AFBR-S50MV85G. (Zdroj kódu: Broadcom)
Jak je uvedeno v seznamu, tři dříve zmíněná volání funkcí API tvoří páteř provádění cyklu měření. Prostudováním dokumentace API a dalších ukázkových aplikací v SDK mohou vývojáři rychle implementovat složité 3D aplikace. Díky tomu lze rychle určit rychlost, směr a úhel náklonu cílového objektu.
Závěr
Optická snímací zařízení ToF nabízí přesné měření vzdálenosti i v systémech, které vyžadují nízkou spotřebu. Pomocí vývojové sady mohou vývojáři rychle implementovat systémy pro přesné měření v aplikacích 1D určování vzdálenosti a pro komplexní sledování pohybu objektů ve 3D aplikacích.
Článek vyšel v originále na webu DigiKey.com, autorem je Stephen Evanczuk.