Jak szybko uruchomić projekt trójwymiarowego optycznego pomiaru czasu przelotu (ToF)

Przez: Stephen Evanczuk

Przekazane przez: Północnoamerykańscy redaktorzy DigiKey

Optyczny pomiar odległości na podstawie czasu przelotu (ToF) odgrywa zasadniczą rolę w różnorodnych zastosowaniach, od czujników przemysłowych po interfejsy użytkownika oparte na gestach. Dzięki dostępności precyzyjnych, szybkich, wielopikselowych czujników ToF deweloperzy mogą wdrażać bardziej zaawansowane, trójwymiarowe algorytmy pomiarowe potrzebne w tych zastosowaniach. Jednak czas prac rozwojowych jest wydłużony ze względu na złożoność wielopikselowego podsystemu pomiaru optycznego.

W niniejszym artykule omówiono podstawowe zasady dotyczące czasu przelotu. Dodatkowo przedstawiono optyczny zestaw ewaluacyjny ToF firmy Broadcom, który umożliwia deweloperom szybkie tworzenie prototypów precyzyjnych układów do pomiaru odległości w jednym i trzech wymiarach, a także szybkie wdrażanie niestandardowych rozwiązań do optycznego pomiaru czasu przelotu (ToF).

Podstawy optycznej technologii ToF

Optyczna technologia ToF wykorzystywana do dokładnego pomiaru odległości potrzebnego w wielu zastosowaniach pozwala na wykonywanie pomiarów w oparciu o czas potrzebny na przelot światła przez powietrze. Szczegółowe obliczenia wykorzystywane podczas tych pomiarów opierają się zasadniczo na dwóch różnych podejściach - bezpośrednim i pośrednim czasie przelotu. W trybie bezpośredniego czasu przelotu, zwanym pomiarem impulsowym, urządzenie mierzy czas między nadaniem i odebraniem określonego impulsu świetlnego przez czujnik ToF przy użyciu równania 1:

Równanie 1 Równanie 1

Gdzie:

c0 = prędkość światła w próżni

∆T = czas między nadaniem i odebraniem

Choć koncepcja jest prosta, możliwość wykonywania dokładnych pomiarów przy użyciu omawianego podejścia wiąże się z koniecznością sprostania wielu wyzwaniom, takim jak potrzeba dysponowania wystarczająco wydajnymi nadajnikami i odbiornikami, zwiększenia stosunku sygnału do szumu i precyzyjnego wykrywania zbocza impulsu.

Z kolei pośrednie metody ToF wykorzystują modulowaną falę ciągłą i mierzą różnicę fazową pomiędzy sygnałami wysyłanymi i odbieranymi, zgodnie z równaniem 2:

d = c0 / 2fmod x ∆φ/2π Równanie 2

Gdzie:

c0 = prędkość światła w próżni

fmod = częstotliwość modulacji laserowej

∆φ = ustalona różnica fazowa

Oprócz zmniejszenia zapotrzebowania na moc nadajnika i odbiornika, pośrednie podejście do pomiaru czasu przelotu (ToF) charakteryzuje się też mniejszymi wymaganiami dotyczącymi kształtowania impulsów, obniżając złożoność projektu przeznaczonego do pomiaru odległości w trzech wymiarach i detekcji ruchu.

Zarówno bezpośrednie, jak i pośrednie metody wymagają starannego zaprojektowania optycznego układu front-end i precyzyjnego sterowania sygnałami nadajnika i odbiornika. Od lat deweloperzy mogą korzystać ze zintegrowanych optycznych czujników ToF, które łączą w sobie urządzenia nadające i czujniki odbierające sygnały w jednej obudowie. Niemniej poprzednie generacje tych urządzeń zazwyczaj wymagały od deweloperów rezygnacji z pewnych parametrów czy też charakterystyk działania, takich jak pobór mocy, zasięg, dokładność i szybkość. Takie kompromisy okazały się kluczową przeszkodą dla rosnącej gamy zastosowań w pomiarach przemysłowych, które wymagają średniego zasięgu do 10m.

Bardziej zaawansowane moduły pośrednich czujników ToF, takie jak AFBR -S50MV85G firmy Broadcom, zostały zaprojektowane specjalnie z myślą o sprostaniu rosnącemu zapotrzebowaniu na szybkie i dokładne wyniki przy średnich odległościach przy zachowaniu minimalnych wielkości obudowy i poboru mocy. Bazujący na wspomnianym czujniku zestaw ewaluacyjny AFBR-S50MV85G-EK firmy Broadcom oraz powiązany z nim zestaw rozwojowy oprogramowania (SDK) stanowią wielopikselową platformę rozwojową z czujnikiem ToF, która umożliwia deweloperom szybkie wdrażanie rozwiązań wykorzystujących technologię pomiarów ToF w trzech wymiarach.

W jaki sposób zintegrowany moduł upraszcza pomiar odległości ToF

Moduł AFBR-S50MV85G, opracowany z myślą o przemysłowych zastosowaniach pomiarowych, stanowi kompletne rozwiązanie z optyczną technologią ToF w jednej obudowie. Posiada zintegrowane komponenty takie jak laser podczerwieni 850nm (VCSEL), sześciokątną matrycę 32-pikselową, zintegrowane soczewki do lasera VCSEL i optyki czujników oraz specjalizowany układ scalony (ASIC).

Wyrównany nieruchomo względem matrycy pomiarowej nadajnik oświetla obiekt docelowy, powodując wykrycie odbitego sygnału podczerwieni przez pewną liczbę pikseli w matrycy pomiarowej. W podstawowym trybie działania, dzięki wbudowanym funkcjom tłumienia światła otoczenia, moduł umożliwia dokładne pomiary odległości od powierzchni białych, czarnych, kolorowych, metalowych lub odbijających światło nawet w bezpośrednim świetle słonecznym.

W miarę zmniejszania się odległości od obiektu, automatyczna kompensacja błędów paralaksy pozwala na pomiary praktycznie bez dolnej wartości granicznej odległości. Jednocześnie połączenie oświetlenia podczerwonego i matrycy pomiarowej daje dostęp do dodatkowych informacji o obiekcie, w tym jego ruchu, prędkości, kąta nachylenia lub wyrównania poprzecznego. W rezultacie moduł może dostarczyć danych potrzebnych do określenia kierunku i prędkości mijającego lub zbliżającego się obiektu docelowego (ilustracja 1).

Diagram danych uzyskanych z matrycy pomiarowej 8 x 4 pikseli modułu AFBR-S50MV85G firmy Broadcom (kliknij, aby powiększyć)Ilustracja 1: korzystając z danych uzyskanych z matrycy pomiarowej 8 x 4 pikseli modułu AFBR-S50MV85G, deweloperzy mogą wdrożyć rozwiązania 3D do pomiaru charakterystyki ruchu obiektu. (Źródło ilustracji: Broadcom)

Odpowiadający za precyzyjną pracę lasera VCSEL i matrycy pomiarowej wbudowany specjalizowany układ scalony (ASIC) modułu zawiera wszystkie obwody niezbędne do sterowania laserem VCSEL, przechwytywania sygnału analogowego z matrycy pomiarowej i cyfrowego kondycjonowania sygnału (ilustracja 2).

Schemat specjalizowanego układu scalonego (ASIC) zintegrowanego z modułem AFBR-S50MV85G firmy BroadcomIlustracja 2: specjalizowany układ scalony (ASIC) zintegrowany z modułem AFBR-S50MV85G zawiera wszystkie obwody niezbędne do sterowania źródłem światła VCSEL modułu, akwizycji sygnałów z matrycy pomiarowej i generowania danych cyfrowych przesyłanych przez magistralę SPI. (Źródło ilustracji: Broadcom)

Dzięki zintegrowanemu obwodowi zasilania specjalizowanego układu scalonego (ASIC) moduł może pracować przy pojedynczym zasilaniu 5V, a jego wbudowany, fabrycznie skalibrowany oscylator rezystorowo-kondensatorowy (RC) z kompensacją temperatury i cyfrową pętlą synchronizacji fazowej (PLL) zapewniają wszystkie wymagane sygnały zegarowe. Dzięki tej integracji deweloperzy mogą łatwo włączyć moduł do swoich projektów przy użyciu mikrokontrolera MCU i kilku dodatkowych komponentów zewnętrznych. Połączenie z mikrokontrolerem MCU wymaga tylko wtyku wejścia/wyjścia ogólnego przeznaczenia (GPIO) dla sygnału gotowości danych z modułu, a także połączenia przez cyfrowy szeregowy interfejs urządzeń peryferyjnych (SPI) (ilustracja 3).

Diagram modułu AFBR-S50MV85G firmy Broadcom (kliknij, aby powiększyć)Ilustracja 3: do wdrożenia kompletnego układu pomiaru czasu przelotu (ToF) potrzeba jedynie modułu AFBR-S50MV85G firmy Broadcom wraz z mikrokontrolerem MCU i kilkoma dodatkowymi komponentami. (Źródło ilustracji: Broadcom)

Ten prosty projekt sprzętowy jest uzupełniony przez oprogramowanie sterownika ToF firmy firmy Broadcom, które posiada wszystkie powiązane funkcje programowe niezbędne do wdrożenia pomiaru odległości. Moduł obsługuje zbieranie danych optycznych dla aplikacji do pomiaru odległości, natomiast oprogramowanie sterownika ToF firmy Broadcom zawarte w dostarczonym przez nią zestawie rozwojowym oprogramowania AFBR-S50 realizuje wszystkie etapy konfiguracji i sprzętu oraz pomiaru. Podczas pomiaru oprogramowanie sterownika wyodrębnia zarówno wartości odległości, jak i amplitudy pikseli.

Jak szybko opracować rozwiązanie do pomiaru odległości

W połączeniu z zestawem rozwojowym oprogramowania (SDK) AFBR-S50 zestaw ewaluacyjny AFBR-S50MV85G-EK firmy Broadcom stanowi rozbudowaną platformę do szybkiego prototypowania i opracowywania rozwiązań do pomiaru odległości. Zestaw jest dostarczany z płytką adaptera zawierającą moduł AFBR-S50MV85G, płytkę ewaluacyjną firmy NXP FRDM-KL46Z bazującą na mikrokontrolerze MCU ARM Cortex-M0+, oraz przewód mini-USB do podłączania zespołu płytki ewaluacyjnej do innego systemu wbudowanego (ilustracja 4).

Ilustracja przedstawiająca zestaw ewaluacyjny AFBR-S50MV85G-EK firmy BroadcomIlustracja 4: zestaw ewaluacyjny AFBR-S50MV85G-EK firmy Broadcom oraz powiązane z nim oprogramowanie stanowią kompletną platformę do ewaluacji i prototypowania rozwiązań do pomiaru odległości metodą czasu przelotu (ToF). (Źródło ilustracji: Broadcom)

Aby rozpocząć pomiary odległości ToF za pomocą zestawu ewaluacyjnego, wystarczy wykonać tylko kilka czynności. Po pobraniu zestawu rozwojowego oprogramowania AFBR-S50 kreator instalacji prowadzi przez procedurę szybkiej instalacji. Po uruchomieniu programu AFBR-S50 Explorer firmy Broadcom dołączonego do zestawu rozwojowego oprogramowania, nawiązywane jest połączenie z płytką ewaluacyjną AFBR-S50 za pośrednictwem interfejsu USB, po czym program odbiera dane pomiarowe za pośrednictwem oprogramowania sterownika działającego na mikrokontrolerze MCU płytki firmy NXP, a następnie wyświetla dla użytkownika wyniki na wykresie 1- lub 3-wymiarowym (ilustracja 5).

Ilustracja przedstawiająca oprogramowanie AFBR-S50 Explorer firmy Broadcom (kliknij, aby powiększyć)Ilustracja 5: oprogramowanie Explorer AFBR-S50 upraszcza ewaluację pomiarów metodą czasu przelotu (ToF) dzięki wykresom 3D przedstawiającym otrzymaną amplitudę oświetlenia dla każdego piksela matrycy pomiarowej ToF. (Źródło ilustracji: Broadcom)

Jak pokazano na ilustracji 5, w widoku wykresu 3D wyświetlane są odczyty z każdego piksela, ale oprogramowanie udostępnia widok alternatywny, który umożliwia deweloperom zobaczyć tylko piksele uznane za odpowiednie do danego pomiaru. W tym widoku alternatywnymi piksele, które nie spełniają zdefiniowanych kryteriów, są usuwane z wykresu (ilustracja 6).

Ilustracja przedstawiająca oprogramowanie AFBR-S50 Explorer firmy Broadcom (kliknij, aby powiększyć)Ilustracja 6: w oprogramowaniu AFBR-S50 Explorer firmy Broadcom deweloperzy mogą wyświetlać zoptymalizowane trójwymiarowe wykresy pomiarów z wykluczeniem pikseli niespełniających wstępnie zdefiniowanych kryteriów. (Źródło ilustracji: Broadcom)

Aby zbadać dokładność i wydajność pomiarów przy różnych warunkach otoczenia, np. oświetleniu, współczynniku odbicia i typach powierzchni, deweloperzy mogą sprawdzić wpływ różnych konfiguracji pomiarów, np. wykorzystania większej liczby pikseli w rozszerzonych zastosowaniach 3D lub mniejszej liczby pikseli w zastosowaniach 1D wymagających bardziej precyzyjnego pomiaru. Po ewaluacji metod pomiarowych w prototypach deweloperzy mogą skorzystać z przykładowego oprogramowania zawartego w zestawie rozwojowym oprogramowania AFBR-S50 firmy Broadcom, aby szybko wdrożyć niestandardowe aplikacje pomiarowe ToF.

Tworzenie niestandardowych aplikacji pomiarowych ToF

Firma Broadcom wspiera opracowywanie aplikacji pomiarowych ToF wykorzystując wydajną architekturę opartą na bibliotece głównej AFBR-S50 obejmującej dedykowany dla czujnika kod, interfejs programowania aplikacji (API) i warstwy abstrakcji sprzętu (HAL) (ilustracja 7).

Diagram środowiska operacyjnego ToF firmy BroadcomIlustracja 7: w środowisku operacyjnym ToF firmy Broadcom interfejs API sterownika ToF zapewnia kodowi aplikacji użytkownika dostęp do kalibracji, pomiaru i ewaluacji we wstępnie skompilowanej bibliotece głównej sterownika ToF. (Źródło ilustracji: Broadcom)

W ramach zestawu rozwojowego oprogramowania AFBR-S50 SDK firma Broadcom udostępnia bibliotekę główną w postaci wstępnie skompilowanego pliku biblioteki ANSI-C, w którym osadzone są wszystkie dane i algorytmy potrzebne do uruchomienia sprzętu AFBR-S50MV85G. Biblioteka główna działająca na mikrokontrolerze MCU układu pomiaru odległości zapewnia takie funkcje jak kalibracja, pomiar i ewaluacja, służące do wykonywania pomiarów odległości przy minimalnym obciążeniu przetwarzania czy poborze mocy. Dzięki temu, że biblioteka główna obsługuje wszystkie podstawowe operacje, z punktu widzenia dewelopera podstawowy cykl pomiarowy jest prosty (ilustracja 8).

Ilustracja przedstawiająca zestaw rozwojowy oprogramowania (SDK) ToF AFBR-S50 firmy Broadcom (kliknij, aby powiększyć)Ilustracja 8: zestaw rozwojowy oprogramowania (SDK) ToF AFBR-S50 zmniejsza obciążenie procesora przy użyciu przerwań i wywołań zwrotnych. (Źródło ilustracji: Broadcom)

Na początku każdego cyklu pomiarowego (inicjowanego przez okresowe przerwanie czasowe lub żądanie przerwania IRQ) mikrokontroler MCU rozpoczyna pomiar i natychmiast powraca do stanu bezczynności (lub kontynuuje przetwarzanie kodu aplikacji). Po zakończeniu pomiaru moduł AFBR-S50MV85G wykorzystuje podłączoną linię wejścia-wyjścia ogólnego przeznaczenia (GPIO) do zasygnalizowania przerwania, co wybudza mikrokontroler MCU w celu zainicjowania odczytu danych w szeregowym interfejsie urządzeń peryferyjnych (SPI). Po tej operacji mikrokontroler MCU powraca do poprzedniego stanu. Po zakończeniu odczytu danych (sygnalizowanego przez żądanie przerwania IRQ „SPI Done”) mikrokontroler MCU wykonuje kod w celu ewaluacji pozyskanych danych czujnika ToF.

Aby zapobiec utracie danych pomiarowych, biblioteka główna zapobiega rozpoczęciu nowego cyklu pomiarowego przez zablokowanie bufora danych do czasu uruchomienia procedury ewaluacji. W związku z tym deweloperzy zazwyczaj przewidują dwa bufory dla danych nieprzetworzonych, co umożliwia wykonywanie zadań pomiarowych i ewaluacyjnych naprzemiennie.

Dla deweloperów aplikacji procedury biblioteki głównej stanowią osłonę dla charakterystyki kalibracji, pomiarów i ewaluacji. W rzeczywistości do uzyskania danych pomiarowych do kodu aplikacji wysokiego poziomu deweloperzy mogą wykorzystać zestaw ewaluacyjny i aplikację AFBR-S50 Explorer jako kompletną platformę prototypowania.

Dla deweloperów, którzy muszą wdrożyć niestandardowe oprogramowanie, przewidziano zestaw rozwojowy oprogramowania AFBR-S50, który łączy w sobie wstępnie skompilowane moduły biblioteki głównej z kilkoma przykładami oprogramowania. Dzięki niemu deweloperzy mogą szybko tworzyć własne aplikacje do pomiarów czasu przelotu (ToF), bazując na przykładach dostępnych w zestawie. Deweloperzy mogą uzyskać dostęp do funkcji sprzętu AFBR-S50MV85G i biblioteki głównej AFBR-S50 w spersonalizowanym kodzie oprogramowania, wywołując funkcje w interfejsie API zestawu rozwojowego oprogramowania AFBR-S50 i określając własne funkcje dla różnych wywołań obsługiwanych przez bibliotekę główną (patrz ponownie ilustracja 7).

Firma Broadcom udostępnia obszerną dokumentację interfejsu API i przykładowego oprogramowania, umożliwiając deweloperom szybkie dostosowanie przykładów oprogramowania do ich potrzeb lub rozpoczęcie pracy od zera. W rzeczywistości podstawowy cykl pomiaru i ewaluacji jest prosty - wystarczy dopasować funkcje niestandardowe i wywołania interfejsu API do cyklu pomiarowego (patrz ponownie ilustracja 8). Na przykład omówiony wcześniej cykl pomiarowy obejmuje trzy fazy: integrację urządzeń ToF, odczyt danych i ewaluację. Podstawowe wywołania interfejsu API biblioteki potrzebne do zainicjowania tych trzech faz to:

  • Argus_TriggerMeasurement(), które asynchronicznie uruchamia pojedynczą klatkę pomiarową
  • Argus_GetStatus(), które zwraca STATUS_OK po pomyślnym zakończeniu pomiaru
  • Argus_EvaluateData(), które dokonuje ewaluacji użytecznych informacji na podstawie nieprzetworzonych danych pomiarowych

Firma Broadcom demonstruje tę podstawową pętlę pomiarową w przykładowej aplikacji dołączonej do dystrybucji zestawu rozwojowego oprogramowania (SDK), pokazanej na listingu 1.

Kopiuj
int main(void)
{
   status_t status = STATUS_OK;
   
   /* Initialize the platform hardware including the required peripherals
   * for the API. */
   hardware_init();
   
   /* The API module handle that contains all data definitions that is
   * required within the API module for the corresponding hardware device.
   * Every call to an API function requires the passing of a pointer to this
   * data structure. */
   argus_hnd_t * hnd = Argus_CreateHandle();
   handle_error(hnd ? STATUS_OK : ERROR_FAIL, "Argus_CreateHandle failed!");
   
   /* Initialize the API with default values.
   * This implicitly calls the initialization functions
   * of the underlying API modules.
   *
   * The second parameter is stored and passed to all function calls
   * to the S2PI module. This piece of information can be utilized in
   * order to determine the addressed SPI slave and enabled the usage
   * of multiple devices on a single SPI peripheral. */
   
   status = Argus_Init(hnd, SPI_SLAVE);
   handle_error(status, "Argus_Init failed!");
   
   /* Print some information about current API and connected device. */
   uint32_t value = Argus_GetAPIVersion();
   uint8_t a = (value >> 24) & 0xFFU;
   uint8_t b = (value >> 16) & 0xFFU;
   uint8_t c = value & 0xFFFFU;
   uint32_t id = Argus_GetChipID(hnd);
   argus_module_version_t mv = Argus_GetModuleVersion(hnd);
   print("\n##### AFBR-S50 API - Simple Example ##############\n"
   " API Version: v%d.%d.%d\n"
   " Chip ID: %d\n"
   " Module: %s\n"
   "##################################################\n",
   a, b, c, id,
   mv == AFBR_S50MV85G_V1 ? "AFBR-S50MV85G (v1)" :
   mv == AFBR_S50MV85G_V2 ? "AFBR-S50MV85G (v2)" :
   mv == AFBR_S50MV85G_V3 ? "AFBR-S50MV85G (v3)" :
   mv == AFBR_S50LV85D_V1 ? "AFBR-S50LV85D (v1)" :
   mv == AFBR_S50MV68B_V1 ? "AFBR-S50MV68B (v1)" :
   mv == AFBR_S50MV85I_V1 ? "AFBR-S50MV85I (v1)" :
   mv == AFBR_S50SV85K_V1 ? "AFBR-S50SV85K (v1)" :
   "unknown");
      
/* Adjust some configuration parameters by invoking the dedicated API methods. */
   status = Argus_SetConfigurationFrameTime( hnd, 100000 ); // 0.1 second = 10 Hz
   handle_error(status, "Argus_SetConfigurationFrameTime failed!");
   
   /* The program loop ... */
   for (;;)
   {
      myData = 0;
      /* Triggers a single measurement.
      * Note that due to the laser safety algorithms, the method might refuse
      * to restart a measurement when the appropriate time has not been elapsed
      * right now. The function returns with status #STATUS_ARGUS_POWERLIMIT and
      * the function must be called again later. Use the frame time configuration
      * in order to adjust the timing between two measurement frames. */
      Argus_TriggerMeasurement(hnd, measurement_ready_callback);
      handle_error(status, "Argus_StartMeasurementTimer failed!");
      STATUS_ARGUS_POWERLIMIT)
      {
         /* Not ready (due to laser safety) to restart the measurement yet.
         * Come back later. */
         continue;
      }
      else
      {
         /* Wait until measurement data is ready. */
      do
         {
            status = Argus_GetStatus(hnd);
         }
         while (status == STATUS_BUSY);
         handle_error(status, "Waiting for measurement data ready (Argus_GetStatus) failed!");
         /* The measurement data structure. */
         argus_results_t res;
         
         /* Evaluate the raw measurement results. */
         status = Argus_EvaluateData(hnd, &res, (void*) myData);
         handle_error(status, "Argus_EvaluateData failed!");
         
         /* Use the obtain results, e.g. print via UART. */
         print_results(&res);
         }
      }
}

Listing 1: przykładowy kod w dystrybucji zestawu rozwojowego oprogramowania (SDK) AFBR-S50 firmy Broadcom demonstrujący podstawowy schemat projektowania dla pozyskiwania i oceny danych ToF z modułu AFBR-S50MV85G. (Źródło kodu: Broadcom)

Jak widać na listingu, trzy wywołania funkcji interfejsu API wymienione wcześniej stanowią podstawę wykonywania cyklu pomiarowego. Studiując dokumentację API i inne przykładowe aplikacje w zestawie rozwojowym oprogramowania, deweloperzy mogą szybko wdrożyć złożone rozwiązania 3D, wykorzystując zdolność modułu do dostarczania danych potrzebnych do określenia zaawansowanych elementów charakterystyki, takich jak prędkość, kierunek i kąt nachylenia obiektu docelowego.

Podsumowanie

Optyczne urządzenia do pomiaru czasu przelotu (ToF) umożliwiły opracowanie rozwiązań dla różnych dziedzin wymagających precyzyjnego pomiaru odległości, jednak ograniczenia wynikające z zasięgu pomiarowego, dokładności i niezawodności wykluczyły możliwość ich stosowania w przemysłowych układach pomiarowych wymagających urządzeń o niskim poborze mocy, będących w stanie zapewnić dokładne wyniki przy większym zasięgu. Zintegrowany optyczny podsystem pomiaru czasu przelotu (ToF) firmy Broadcom spełnia nowe wymagania, umożliwiając opracowanie urządzeń pomiarowych następnej generacji. Korzystając z zestawu ewaluacyjnego opartego na wspomnianym urządzeniu, deweloperzy mogą szybko wdrożyć systemy do precyzyjnego pomiaru w jednym wymiarze, a także do złożonego śledzenia ruchu obiektów w trzech wymiarach.

DigiKey logo

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.

Informacje o autorze

Image of Stephen Evanczuk

Stephen Evanczuk

Stephen Evanczuk has more than 20 years of experience writing for and about the electronics industry on a wide range of topics including hardware, software, systems, and applications including the IoT. He received his Ph.D. in neuroscience on neuronal networks and worked in the aerospace industry on massively distributed secure systems and algorithm acceleration methods. Currently, when he's not writing articles on technology and engineering, he's working on applications of deep learning to recognition and recommendation systems.

Informacje o wydawcy

Północnoamerykańscy redaktorzy DigiKey