Szybkie wdrażanie czujnika odległości Time-of-Flight przy użyciu gotowego rozwiązania
Przekazane przez: Północnoamerykańscy redaktorzy DigiKey
2020-04-02
Technologia Time-of-Flight (ToF, czas przelotu) jest coraz częściej stosowana do pomiaru odległości i wykrywania bliskości w zastosowaniach od produktów konsumenckich po urządzenia przemysłowe. Dostępność pojedynczych układów scalonych przetwarzających ToF upraszcza wdrażanie tych rozwiązań, ale projektanci wciąż borykają się ze sporymi wyzwaniami, takimi jak znalezienie i optymalizacja odpowiednich emiterów i fotodiod oraz zintegrowanie tych urządzeń z procesorem ToF. Zintegrowane rozwiązanie mogłoby znacznie uprościć ten proces i zaoszczędzić czas.
Aby rozwiązać ten problem, firma Digilent opracowała gotową płytkę dodatkową ToF, która w połączeniu z wysokowydajną płytką systemową i powiązaną biblioteką oprogramowania zapewnia kompletne rozwiązanie sprzętowe ToF. Dzięki temu konstruktorzy mogą natychmiast rozpocząć prototypowanie aplikacji ToF lub użyć tego sprzętu i oprogramowania jako podstawy do projektowania niestandardowych urządzeń i oprogramowania ToF.
W niniejszym artykule opisano pokrótce działanie czujników ToF. Następnie przedstawiono płytkę Pmod ToF firmy Digilent i pokazano, jak można jej używać w połączeniu z płytką rozwojową Digilent Zybo Z7-20 do ewaluacji technologii ToF i szybkiego wdrożenia optycznego wykrywania odległości we własnych projektach.
Jak działają czujniki ToF
Czujniki ToF odgrywają ważną rolę w coraz szerszym zakresie zastosowań. W pojazdach i sprzęcie przemysłowym czujniki te pomagają ostrzegać operatorów o przeszkodach podczas parkowania lub manewrowania w bliskich odległościach. W zastosowaniach konsumenckich urządzenia te zapewniają wykrywanie bliskości w produktach mobilnych lub systemach automatyki domowej. W tych i innych zastosowaniach optyczne systemy ToF obliczają odległość do obiektu lub przeszkody przy użyciu różnych metod, które opierają się na różnicy między światłem odbitym od obiektu a światłem pierwotnie wyemitowanym.
Zaawansowane urządzenie ToF, takie jak układ Renesas ISL29501, oblicza odległość, mierząc przesunięcie fazowe między światłem nadawanym z zewnętrznej diody LED lub lasera a światłem odebranym przez fotodiodę. Gdy ISL29501 transmituje światło (Tx) modulowane falą prostokątną przy danej częstotliwości fm, sygnał optyczny (Rx) odbity od obiektu wraca do ISL29501 z mniejszą amplitudą R z pewnym przesunięciem fazowym j (ilustracja 1).
Ilustracja 1: zaawansowane urządzenia ToF, takie jak Renesas ISL29501, wykorzystują swoje wewnętrzne możliwości cyfrowego przetwarzania sygnału do obliczania odległości do obiektów na podstawie przesunięcia fazowego j między światłem transmitowanym a odbitym. (Źródło ilustracji: Renesas)
Mierząc to przesunięcie fazowe, urządzenie może obliczyć odległość D:
Równanie 1
Gdzie:
D = odległość do celu
c = prędkość światła
fm = częstotliwość modulacji
φ = kąt fazowy (radiany)
Ponieważ modulowany sygnał częstotliwości fm i prędkość światła c są znane, można obliczyć odległość przez znalezienie niewiadomej, czyli kąta fazowego φ. Wartość tę można obliczyć za pomocą tradycyjnych technik przetwarzania sygnału kwadraturowego. W tym przypadku składowe sygnału w fazie (I) i kwadraturowego (Q) są generowane przez oddzielne ścieżki sygnału I i Q zawierające demodulator, filtr dolnoprzepustowy (LPF) i przetwornik analogowo-cyfrowy (ADC) (ilustracja 2).
Ilustracja 2: aby obliczyć kąt fazowy φ wymagany do obliczenia odległości, układ Renesas ISL29501 demoduluje, filtruje i przekształca składowe fazowego (I) i kwadraturowego (Q) sygnału wejściowego (VIN). (Źródło ilustracji: Renesas)
Układ ISL29501 dokonuje wewnętrznego całkowania kompleksowej ścieżki sygnału, poprzedzającej ścieżkę demodulacji, z analogowym układem kondycjonowania sygnału analogowego interfejsu (AFE) obejmującym wzmacniacz transimpedancyjny (TIA) i wzmacniacz niskoszumowy (LNA). Za interfejsem AFE znajduje się ścieżka sygnału wejściowego ISL29501 z pętlą o zmiennym wzmocnieniu (Av) i automatycznej kontroli wzmocnienia (AGC), która wykorzystuje swoje wbudowane algorytmy do optymalizacji SNR.
Po stronie wyjściowej ISL29501 zawiera wbudowany układ sterownika emitera, zdolny do dostarczania impulsów fali kwadratowej o częstotliwości modulacji 4,5 megaherca (MHz) i prądu sterującego do 255 miliamperów (mA) do odpowiedniego emitera. Uzupełniając tę funkcjonalną architekturę, wewnętrzny cyfrowy procesor sygnałowy (DSP) obsługuje obliczenia wymagane do wygenerowania wyniku odległości na podstawie danych fazy, amplitudy i częstotliwości (ilustracja 3).
Ilustracja 3: układ Renesas ISL29501 obejmuje ścieżki sygnału do sterowania emiterem i przetwarzaniem wejścia fotodiody oraz wewnętrznym cyfrowym procesorem sygnałowym, który wykonuje algorytmy wykorzystywane do obliczania odległości na podstawie danych fazy, amplitudy i częstotliwości. (Źródło ilustracji: Renesas)
Dobór emiterów i fotodiod
Dzięki zintegrowaniu wejścia fotodiody, wyjścia emitera i możliwości przetwarzania, układ ISL29501 zapewnia elastyczne podstawy sprzętowe do budowania urządzeń ToF do wykrywania odległości. Funkcje, takie jak pętla AFE i AGC po stronie wejściowej oraz programowalny sterownik emitera po stronie wyjściowej, zostały zaprojektowane specjalnie do obsługi szerokiej gamy emiterów i fotodiod. Jednocześnie skuteczność kompletnego rozwiązania ToF zależy przede wszystkim od starannego doboru i konfiguracji emitera oraz fotodiody.
Na przykład w wypadku emitera elastyczność układu ISL29501 pozwala konstruktorom dobierać urządzenia spośród szerokiej gamy diod podczerwieni (IR), laserów o emisji powierzchniowej z pionową wnęką rezonansową (VCSEL) lub innych urządzeń laserowych o zgodnych specyfikacjach napięcia, prądu i częstotliwości. W gruncie rzeczy typowe rozwiązanie ToF jest stosunkowo niezależne od rodzaju emitera. Niemniej jednak zaleca się stosowanie urządzenia w podczerwieni bliskiej (NIR) lub podczerwieni średniej (MWIR), aby zmniejszyć zakłócenia ze źródeł światła otoczenia. Po wybraniu urządzenia konstruktor musi określić optymalny sterujący prąd impulsowy emitera, a także wszelkie wymagane komponenty zasilania prądem stałym. Następnie musi zaprogramować urządzenie do dostarczania impulsu i opcjonalnego prądu stałego za pomocą oddzielnych wewnętrznych przetworników cyfrowo-analogowych (DAC) zintegrowanych z układem wyjściowym sterownika emitera.
Podobnie układ ISL29501 może obsługiwać szeroką gamę fotodiod, ale zastosowanie i wybór emiterów będzie odgrywać kluczową rolę w określeniu optymalnego wyboru. Podobnie jak w przypadku emitera, fotodioda działająca na długości fali NIR lub MWIR pomaga zmniejszyć zakłócenia światła otoczenia. Idealnie jeśli krzywa reakcji widmowej fotodiody jest możliwie wąska ze szczytem wyśrodkowanym na szczytowej długości fali emitera, aby zoptymalizować stosunek sygnału do szumu (SNR). Chociaż fotodioda musi zmaksymalizować ilość światła, którą jest w stanie odebrać, zwiększenie powierzchni fotodiody wiąże się również z wyższą pojemnością (zarówno pojemnością złącza, jak i błądzącą), co może pogorszyć czas reakcji fotodiody i jej zdolność do śledzenia czasów narastania i opadania emitera. Z tego powodu konstruktorzy muszą optymalnie zrównoważyć powierzchnię fotodiody i wewnętrzną pojemność potrzebną do maksymalizacji amplitudy sygnału bez uszczerbku dla wydajności.
Zintegrowane rozwiązanie ToF
Zaprojektowana w celu przyspieszenia rozwoju aplikacji ToF płytka Pmod ToF firmy Digilent stanowi gotowe rozwiązanie ToF, które zawiera w sobie układ Renesas ISL29501 ToF, układ AT24C04D EEPROM firmy Microchip Technology, diodę IR i fotodiodę na niewielkiej płytce małego formatu z sześciowtykowym hostem Pmod i przejściowymi złączami do podłączenia dodatkowych płytek rozszerzających Pmod (ilustracja 4).
Ilustracja 4: płytka Pmod ToF firmy Digilent stanowi kompletne rozwiązanie czujnika ToF przeznaczone do połączenia z płytkami systemowymi za pomocą złączy Pmod. (Źródło ilustracji: Digilent)
Jeśli chodzi o źródło światła i detektor, płytka zawiera diodę LED 860 nanometrów (nm) o wysokiej mocy OSRAM Opto Semiconductors SFH 4550 oraz fotodiodę OSRAM SFH 213 FA, która ma szybki czas przełączania, czułość widmową od 750 do 1100nm i czułość szczytową przy 900nm.
Chociaż układ Renesas ISL29501 nie wymaga dodatkowych komponentów dla powiązanej diody LED i fotodiody, wymaga jednak odpowiedniego źródła zasilania od 2,7V do 3,3V dla każdej z trzech domen mocy zasilanych osobnymi pinami dla analogowego źródła napięcia (AVCC), cyfrowego źródła napięcia (DVCC) i napięcia sterownika emitera (EVCC). Chociaż mogą być one zasilane z tego samego źródła, Renesas zaleca odizolowanie tych trzech źródeł zasilania. Jak pokazano na schemacie płytki Pmod ToF, firma Digilent realizuje izolację płytki ToF za pomocą koralików ferrytowych i kondensatorów Murata Electronics BLM15BD471SN1D dla każdego źródła zasilania (ilustracja 5).
Ilustracja 5: płytka Pmod ToF firmy Digilent stanowi zarówno gotowe rozwiązanie sprzętowe do szybkiego prototypowania, jak i projekt referencyjny dla niestandardowych systemów ToF. (Źródło ilustracji: Digilent)
Środowisko rozwojowe
Firma Digilent pomaga też przyspieszyć wdrażanie aplikacji ToF w środowisku rozwojowym opartym na płycie Zybo Z7-20. Płytka zapewnia wysoce wydajne środowisko operacyjne zbudowane na bazie programowalnych układów SoC (APSoC) Zynq XC7Z020 firmy Xilinx. Wspomniany układ APSoC zawiera dwurdzeniowy procesor Arm® Cortex®-A9 z rozbudowaną programowalną strukturą zapewniającą wsparcie dla 53200 tablic podglądu (LUT), 106400 przerzutników i 630 kilobajtów (KB) blokowej pamięci o swobodnym dostępie (RAM). Wraz z Zynq XC7Z020 APSoC firmy Xilinx, płyta Zybo Z7-20 zawiera 1 gigabajt (GB) pamięci RAM, 16 megabajtów (MB) quad SPI flash, wiele interfejsów, złącza i sześć portów rozszerzeń Pmod.
Dystrybucja oprogramowania Digilent ZyboZ7-20 PmodToF-Demo, zaprojektowana do pracy na płycie Zybo Z7-20, obejmuje zestaw rozwojowy oprogramowania (SDK) dla jej biblioteki oprogramowania bloków hierarchicznych Pmod ToF. Ta biblioteka zapewnia programistom intuicyjny interfejs programowania aplikacji (API) do budowania aplikacji opartych na sterownikach i modułach pomocniczych w układzie SDK firmy Xilinx lub dostarczonych przez firmę Digilent dla płyty Pmod ToF (ilustracja 6).
Ilustracja 6: biblioteka oprogramowania hierarchicznych bloków Pmod ToF firmy Digilent rozszerza sterowniki interfejsu niskiego poziomu w układzie SDK firmy Xilinx o moduły dla czujnika ISL29501 firmy Renesas, EEPROM i usługi Pmod ToF. (Źródło ilustracji: Digilent)
Biblioteka firmy Digilent łączy sterowniki niskiego poziomu dla komunikacji I2C, GPIO i UART SDK firmy Xilinx z modułami, które realizują operacje na poziomie rejestru dla płytki Pmod ToF Board EEPROM firmy Digilent i urządzenia ISL29501 firmy Renesas. Na przykład moduł ISL29501 zapewnia funkcję wykonywania pomiaru odległości za pomocą układu ISL29501. Ponieważ układ ISL29501 wewnętrznie implementuje szczegółową sekwencję operacji wymaganych do wykonania tego pomiaru, wykonanie pomiaru odległości wymaga jedynie wstępnej konfiguracji i szeregu rejestrów odczytu i zapisu. Moduł ISL29501 biblioteki firmy Digilent zapewnia funkcje do implementacji określonych operacji układu ISL29501, w tym do wykonania pomiaru odległości (tabela 1).
Copy double PmodToF_perform_distance_measurement() { /* WRITE REG */ u8 reg0x13_data = 0x7D; u8 reg0x60_data = 0x01; /* READ REG */ u8 unused; u8 DistanceMSB; u8 DistanceLSB; double distance = 1; ISL29501_WriteIIC(&myToFDevice, 0x13, ®0x13_data, 1); ISL29501_WriteIIC(&myToFDevice, 0x60, ®0x60_data, 1); ISL29501_ReadIIC(&myToFDevice, 0x69, &unused, 1); CALIB_initiate_calibration_measurement(); //waits for IRQ while((XGpio_DiscreteRead(&gpio, GPIO_CHANNEL) & GPIO_DATA_RDY_MSK) != 0 ); ISL29501_ReadIIC(&myToFDevice, 0xD1, &DistanceMSB, 1); ISL29501_ReadIIC(&myToFDevice, 0xD2, &DistanceLSB, 1); distance =(((double)DistanceMSB * 256 + (double)DistanceLSB)/65536) * 33.31; return distance; }
Listing 1: funkcje oprogramowania zawarte w module ISL29501 biblioteki firmy Digilent realizują operacje na poziomie rejestru, takie jak pokazane tutaj wykonywanie pomiaru odległości. (Źródło kodu: Digilent)
Moduł PmodToF biblioteki firmy Digilent zapewnia usługi wyższego poziomu zbudowane na modułach niższego poziomu. Na przykład, aby wykonać i wyświetlić pomiar, funkcja PmodToFCMD_MeasureCmd() modułu PmodToF wywołuje funkcję PmodToF_perform_distance_measurement() modułu ISL29501 na poziomie rejestru i wyświetla średnią wyników (listing 2).
Copy /*** PmodToFCMD_MeasureCmd ** ** Parameters: ** none ** ** Return Value: ** ERRVAL_SUCCESS 0 // success ** ** Description: ** This function displays over UART the distance measured by the device.
** Before calling this function, it is important that a manual calibration was made or the calibration ** was imported(calibration stored by the user in EEPROM user area )/restored from EEPROM(factory calibration).
*/ void PmodToFCMD_MeasureCmd() { int N = 100, sum = 0; int distance_val, distance_val_avg; // 100 distance values that are measure will be averaged into a final distance value for(int j=0;j<N;j++) { distance_val = 1000 * PmodToF_perform_distance_measurement(); // the distance value is in millimeters sum = sum + distance_val; } distance_val_avg = sum/N; sprintf(szMsg, "Distance measured D = %d mm.", distance_val_avg); ERRORS_GetPrefixedMessageString(ERRVAL_SUCCESS, "", szMsg); UART_PutString(szMsg); }
Listing 2: funkcje oprogramowania zawarte w module PmodToF biblioteki firmy Digilent realizują usługi na poziomie aplikacji, takie jak pokazane tutaj wyświetlanie średniej z wielu pomiarów odległości. (Źródło kodu: Digilent)
Projektanci mogą korzystać z pełnego zestawu modułów w bibliotece oprogramowania bloków hierarchicznych Pmod ToF firmy Digilent lub korzystać z minimalnego zestawu modułów wymaganych do ich aplikacji. Jednak dla każdej aplikacji projektanci będą musieli wykonać kalibrację wielkości, przesłuchów i odległości, aby zapewnić dokładność. Chociaż wielkość jest kalibrowana wewnętrznie, pozostałe dwie rzeczy wymagają pewnej konfiguracji. W celu kalibracji przesłuchów po prostu blokuje się urządzenia optyczne kawałkiem pianki dołączonym do płytki i uruchamia kalibrację. W celu kalibracji odległości umieszcza się płytkę ToF z optyką umieszczoną w pewnej znanej odległości od celu o wysokim współczynniku odbijania IR i przeprowadza się kalibrację. Chociaż układ ISL29501 nie zawiera pamięci nieulotnej, projektanci mogą zapisać nowe wartości kalibracji w pamięci EEPROM płytki Pmod ToF i załadować te wartości podczas procedur inicjalizacji oprogramowania.
To połączenie gotowego sprzętu i oprogramowania stanowi gotową bazę do tworzenia aplikacji optycznego pomiaru ToF. W celu szybkiego prototypowania można natychmiast uruchomić przykładowe oprogramowanie dystrybucji biblioteki za pomocą płytek Pmod ToF i Zybo Z7-20 firmy Digilent . Jeśli chcemy opracować niestandardowy projekt, możemy budować w oparciu o referencyjny sprzęt w postaci płytki Pmod ToF oraz kod oprogramowania dostarczony w dystrybucji biblioteki firmy Digilent.
Podsumowanie
Podczas gdy pojedyncze układy scalone do przetwarzania ToF pomagają uprościć wdrażanie rozwiązań ToF dla wielu aplikacji, wciąż zachodzi konieczność znalezienia odpowiednich emiterów i fotodiod do integracji. Jak wykazano, bardziej dostępne rozwiązanie stanowi gotowa płytka rozszerzająca ToF w połączeniu z wydajną płytą systemową, które razem zapewniają kompletne sprzętowe rozwiązanie ToF. Łącząc to rozwiązanie sprzętowe z powiązaną biblioteką oprogramowania, konstruktorzy mogą natychmiast rozpocząć prototypowanie aplikacji ToF lub użyć tego sprzętu i oprogramowania jako podstawy do projektowania niestandardowych urządzeń i oprogramowania ToF.
Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.




