Setzen Sie ein PCR-Modul zur schnellen Entwicklung präziser, energiesparender Radarsensoren ein

Von Stephen Evanczuk

Zur Verfügung gestellt von Nordamerikanische Fachredakteure von DigiKey

Hochauflösende 3D-Sensortechnologie ist inzwischen eine Schlüsselfunktion in vielen Anwendungen, die von gestenbasierten Benutzeroberflächen bis hin zu Fahrerassistenzsystemen (Automative Driver Assistance System, ADAS) reichen. Unter den 3D-Sensoralternativen bietet die Radartechnologie Leistungsmerkmale, die sich mit herkömmlichen Ansätzen nicht erzielen lassen. War es bisher für Entwickler eine anspruchsvolle Herausforderung, das richtige Gleichgewicht zwischen hoher Genauigkeit und einem niedrigen Energieverbrauch zu erreichen, ist inzwischen eine steile Lernkurve beim Einsatz von Radarsensorsystemen zu beobachten.

Mithilfe der hochmodernen PCR-Technologie (Pulsed Coherent Radar, gepulstes kohärentes Radar) hat Acconeer einen integrierten Radarsensor entwickelt, der genau die Kombination aus hoher Genauigkeit und geringem Energieverbrauch ermöglicht, die für intelligente Produkte und andere künftige Anwendungen gefragt ist.

Dieser Artikel beschreibt den PCR-Ansatz, den Acconeer bei Einführung seines Radarmoduls verfolgt hat, und die zugehörige Entwicklungsplattform, die mit der Technologie des Moduls arbeitet. Dann erläutern wir, wie Sie mithilfe der Plattform anspruchsvolle Radarsensortechnologie für die unterschiedlichsten Systeme konzipieren können, einschließlich batteriebetriebener intelligenter Produkte.

Warum Radar?

Dank ihrer Fähigkeit millimetergenauer Auflösung bei sehr hohen Aktualisierungsfrequenzen liefert die radarbasierte Sensortechnologie sehr präzise Entfernungs- und Bewegungsdaten, wie sie von Anwendungen zur genauen Objekterkennung, Entfernungsmessung, Positionsverfolgung und Ähnlichem benötigt werden. Bei der Integration von Radartechnologie in das Design intelligenter Produkte waren Entwickler jedoch bisher in der Regel gezwungen, sich zwischen niedrigem Energieverbrauch und hoher Genauigkeit zu entscheiden. Je mehr Entwickler aber versuchten, diese Technologie auch in Anwendungen mit begrenzten Strombudgets einzusetzen, desto größer wurde die Notwendigkeit, selbst bei geringem Stromverbrauch eine hohe Genauigkeit zu erzielen.

Hochmoderne Radartechnologie

Ein alternativer Ansatz zu konventionellen Radardesigns führt zu einer Lösung, welche die Genauigkeit von anspruchsvollen kohärenten Radarverfahren mit den Anforderungen eines geringeren Stromverbrauchs von gepulsten Radarsystemen kombinieren. Bei gepulsten Radardesigns wird der Sender zwischen den Impulsen abgeschaltet. So wird zwar ein niedriger Stromverbrauch erreicht, der jedoch mit einer geringeren Präzision einhergeht. Im Gegensatz dazu senden kohärente Radarsysteme eine kontinuierliche Impulsfolge, wobei präzise Phasenmessungen der Rücklaufsignale verwendet werden, um hochgenaue Messungen zu liefern, was allerdings einen hohen Stromverbrauch verursacht.

Acconeer kombiniert diese beiden Ansätze in der PCR-Technology, die in seinem Radarsensor A111 genutzt wird. Wie beim gepulsten Radar sorgt die PCR-Technologie dafür, dass das Funkmodul zwischen den einzelnen Sendevorgängen ausgeschaltet wird, allerdings sind wie bei einem kohärenten System die Sendevorgänge Impulsstöße bzw. Sweeps mit einer bekannten Startphase (Abbildung 1).

Diagramm zum PCR-Radarbaustein A111 von Acconeer

Abbildung 1: Der PCR-Radarbaustein A111 von Acconeer erzielt eine hohe Genauigkeit bei geringem Energieverbrauch, indem er lange oder kurze Wellenpakete (Wavelets) mit sorgfältig gesteuerter Pulswiederholfrequenz (PRF), Mittenfrequenz (fRF) und Impulsdauer (tpulse) überträgt. (Bildquelle: Acconeer)

Durch die Feinabstimmung von Parametern wie der Impulsdauer (tpulse) können Entwickler die Signale für verschiedene Anwendungen optimieren. Zum Beispiel können Entwickler tpulse verringern, um die kürzeren Wellenpakete zu erzeugen, die erforderlich sind, um kleine Bewegungen von einzelnen Fingern aufzulösen, wie sie in einer gestengesteuerten Benutzeroberfläche erkannt werden müssen. Umgekehrt können sie tpulse erhöhen, um die hochenergetischen langen Wellenpakete zu erzeugen, die benötigt werden, um Hindernisse in einer automatischen Einparkanwendung für Autos aufzulösen.

Trotz der Attraktivität der technischen Vorteile von PCR konnten es sich bisher nur wenige Entwickler ohne umfangreiches Know-how in der Radartechnik leisten, die zur eigenständigen Implementierung dieser Technologie nötige Zeit aufzuwenden. Neben den Herausforderungen, die mit dem Design einer effizienten Millimeterwellen-(mmWave)-Frontend-Stufe verbunden sind, stünden die Entwickler vor der großen Herausforderung, die aus den reflektierten Radarsignalen gewonnenen Amplituden- und Phasendaten in nützliche Messungen von Entfernung und Bewegung umzuwandeln.

Der speziell vor dem Hintergrund dieser Herausforderungen entwickelte PCR-basierte Radarbaustein A111 von Acconeer und das zugehörige Softwareentwicklungs-Kit (SDK) abstrahieren die grundlegenden Details der Radarsignalverarbeitung und liefern Daten in Formen, die von Anwendungen leichter genutzt werden können.

Integriertes PCR-Frontend vereinfacht die Entwicklung

Durch Vereinfachung der Hardwareaspekte bei der Implementierung der PCR-Technologie bietet der A111 von Acconeer einen vollständigen Radarsensor, der ein mmWave-Radar-Frontend mit einer chip-internen Antenne (Antenne-in-Package, AIP) in einem nur 5,2 x 5,5 x 0,88 Millimeter (mm) großen fcCSP-Gehäuse (flip chip Chip-Scale) kombiniert (Abbildung 2).

Schaltbild des A111 von Acconeer mit integriertem Millimeterwellen-(mmWave)-Funkmodul

Abbildung 2: Im A111 von Acconeer sind ein Millimeterwellen-(mmWave)-Funkmodul, das digitale Subsystem, das Timing und das Energiemanagement integriert. Es bildet damit eine komplette Frontend-Lösung für Radarsensorik mit Nutzung der PCR-Technologie. (Bildquelle: Acconeer)

Neben seinem mmWave-Hochfrequenz-(HF)-Subsystem enthält der A111 ein digitales Subsystem mit dedizierten Speicherbereichen für Programm und Daten zur Verwaltung des mmWave-Funksubsystems. Separate Subsysteme übernehmen PLL-Timing- (Phase-Locked Loop) und Energiemanagementfunktionen wie Power-on Reset (POR) und separate LDO-Regler (Low Dropout) für die unterschiedlichen Leistungsbereiche des Bausteins.

Mit seiner zeitlichen Auflösung im Pikosekundenbereich ist der Baustein üblicherweise in der Lage, Distanzen über einen Bereich von bis zu zwei Metern mit Millimetergenauigkeit zu messen. Gleichzeitig kann er durch seinen geringen Energieverbrauch von Entwicklern in batteriebetriebenen Geräten eingesetzt werden. Dank seines hohen Integrationsgrads müssen Anwender beim A111-Sensor neben einem Host-Mikrocontroller nur einige wenige zusätzliche Komponenten einplanen, um die Radarsensorik in ihren Designs zu implementieren (Abbildung 3). Da der A111 ohne eine Öffnung für die Radarsignale auskommt, können ihn Entwickler in intelligente Produkte integrieren, ohne damit die Anforderungen hinsichtlich der Schutzklasse (IP-Wert) zu unterwandern.

Schaltbild des Mikrocontrollers A111

Abbildung 3: Da er sämtliche Funkfrequenz- und digitalen Subsysteme integriert, die ein Radar-Frontend benötigt, ermöglicht der A111 Entwicklern die Implementierung von Radarsensorik mit nur wenigen zusätzlichen Komponenten außer dem Host-Mikrocontroller. (Bildquelle: Acconeer)

Der A111 arbeitet wie ein herkömmlicher SPI-Baustein (Serial Peripheral Interface) mit seriellem Dateneingang (MOSI), seriellem Ausgang (MISO), Taktgeber (SPI_CLK) und SS-Signalports (Slave Select). Über den ENABLE-Pin des A111 lässt sich der Baustein mithilfe des Mikrocontrollers ein- und ausschalten, während der INTERRUPT-Pin den Einsatz des A111 zur Benachrichtigung an den Mikrocontroller über die Messbereitschaft ermöglicht.

Indem der A111 mithilfe des ENABLE-Pins zwischen einzelnen Sweep-Übertragungen ausgeschaltet wird, lässt sich der Stromverbrauch des A111 auf 66 µA (typisch) verringern. Andererseits kann der Host-Mikrocontroller, während der A111 mit einer Reihe von Sweeps und Messungen beschäftigt ist, in einen verbrauchsarmen Ruhemodus versetzt werden, wozu die WFI-Anweisung (Wait-For-Interrupt) verwendet wird, die in Arm® Cortex®-M-Prozessoren zur Verfügung steht. Sie weckt den Mikrocontroller auf, wenn der A111 seine Operationen abgeschlossen hat und einen Interrupt aussendet.

Entwickler können entweder ihren eigenen Präzisions-Taktgeber verwenden oder die interne Taktschaltung des Bausteins nutzen, für den lediglich ein externer Quarzoszillator wie z. B. der TSX-3225 von EPSON benötigt wird. Der Betrieb des Bausteins erfolgt über eine einzige 1,8-Volt-Versorgung für HF (VIO_1 und VIO_2) und die digitalen Subsysteme (VIO_3). Alternativ können Entwickler für energie-intensivere Anwendungen auch getrennte Versorgungsquellen nutzen. Die in Abbildung 3 gezeigten VIO_na- und VIO_nb-Pins sind im Inneren des Bausteins verbunden, und Acconeer empfiehlt, dass diese auch extern auf der Platine verbunden werden.

Auf dem in seiner Reinform als Radar-Frontend-Baustein vorgesehenen A111 wird keine Firmware permanent gespeichert. Stattdessen ist er davon abhängig, dass der Host-Mikrocontroller sämtliche Sensor-Software zu ihm hochlädt und auch die Sensorinitialisierung, Konfiguration, Sweep-Erfassung und Signalverarbeitung übernimmt. Demzufolge wird die Auswahl des begleitenden Mikrocontrollers zu einer wichtigen Designentscheidung. Acconeer weist darauf hin, dass in der Regel ein Arm Cortex-M4-basierter Mikrocontroller wie der STM32L476 von STMicroelectronics oder der NRF52840 von Nordic Semiconductor für relativ statische Operationen wie etwa Distanzmessung oder grundlegende Bewegungserkennung ausreicht. Für Anwendungen mit einer größeren Dynamik, etwa Atembewegungserkennung oder Objektverfolgung, empfiehlt Acconeer einen Arm Cortex-M7-basierten Mikrocontroller wie den ATSAME70 von Microchip Technology. Dazu bietet Acconeer mit seinem XM112-Radarmodul eine Paarung zwischen dem PCR-Baustein A111 und einem ATSAME70 an.

Das XM112-Modul von Acconeer kombiniert den A111-Radarsensor mit einem ATSAME70-Mikrocontroller von Microchip Technology zu einem vollständigen Radarsubsystem. Mit dem XM112 in Verbindung mit der Breakout-Karte XB112 können Entwickler sofort mit der Evaluierung des A111 und dem Aufbau von PCR-basierten Software-Anwendungen loslegen. Alternativ können sie einfach das 24 mm x 16 mm große 30-Pin-Modul in ihre eigenen Platinen einstecken, um ihre individuellen Designs durch ein eigenständiges PCR-Subsystem zu ergänzen. Zur Durchführung von Radarmessungen können Entwickler das XM112-Modul über eine serielle Verbindung mit ihren Entwicklungssystemen steuern oder Software direkt auf dem ATSAME70-Host-Mikrocontroller des XM112 ausführen.

Software-Schnittstelle

Unabhängig von der Konfiguration der Hardware-Systeme erfolgt die Programmsteuerung der Radarmessungen über die RSS-API (Radar System Software, Application Programming Interface) von Acconeer. Die RSS-API dient als alleinige Software-Schnittstelle bei der Arbeit mit dem A111. Aufgrund der Komplexität von Design, Kalibrierung und Verarbeitungsanforderungen unterstützt Acconeer nicht den Zugriff auf die A111-Register über typische SPI-Transaktionen. Stattdessen laufen sämtliche Operationen über die RSS, die dem A111-Detektorfunktionalität verschafft. Diese Detektoren wiederum basieren auf Services auf unterer Ebene über APIs für den Zugriff auf verschiedene Arten von vorverarbeiteten Daten aus dem A111. Diese Services sind:

  • der Envelope-Service, der Informationen über die Amplitude der Sensordaten liefert
  • der Power-Bin-Service, der Amplitudeninformationen in vordefinierten Bereichsintervallen (Bins) bereitstellt
  • der IQ-Service, der IQ-modulierte Daten bereitstellt, was die Verwendung von Phasen- und Amplitudenmessungen ermöglicht, mit denen sich noch genauere Messwerte erzielen lassen, als sie mit den rein amplitudenbasierten Envelope- und Power-Bin-Services möglich sind

Innerhalb dieser Services können Entwickler spezielle Funktionen nutzen, unter anderem für Energiemanagement, Bereichserweiterung und Selbstkalibrierung.

Beim Energiemanagement können Entwickler den Baustein in einen von vier Leistungsmodi versetzen, die den Stromverbrauch durch Verringerung der Sensor-Aktualisierungsrate senken. Mit der Funktion zur Bereichserweiterung können Entwickler lange Sweeps durchführen, die den Messbereich unter bestimmten Bedingungen auf bis zu 7 Meter (m) erweitern. Schließlich kann die Selbstkalibrierungsfunktion zur Senkung des Stromverbrauchs im Zusammenhang mit dem Kalibrierungszyklus genutzt werden, der bei jedem Einschalten des Bausteins durchlaufen wird. In batteriebetriebenen Designs für das IoT können die Bausteine z. B. routinemäßig in den Ruhemodus versetzt oder bei längerer Inaktivität sogar ausgeschaltet werden.

In vielen Fällen ist die Durchführung der Selbstkalibrierung zu Beginn jedes Aufwachzyklus unnötig und verschwendet einfach nur Energie. Stattdessen können Entwickler die Werte aus einem anfänglichen Kalibrierungszyklus im nicht flüchtigem Speicher speichern und diese Werte in späteren Aufwachzyklen zur Durchführung von zuverlässigen Messungen verwenden.

Zur Produktionscode-Entwicklung können Ingenieure das vollständige SDP (Software Distribution Package) herunterladen. Es bietet neben dem Acconeer-SDK reichlich Anwendungsquellcode. Das SDK enthält Header-Dateien sowie vorkompilierte RSS-Bibliotheken für ARM Cortex-M4- und ARM Cortex-M7-Mikrocontroller in separaten, Mikrocontroller-spezifischen Distributionen.

Die Code-Beispiele des SDK in C-Programmiersprache veranschaulichen das grundlegende Designmuster beim Einsatz der RSS-API zur Durchführung von Radarmessungen in Produktionsanwendungen. Bei allen Arten der Messung beginnt dieses Designmuster mit der Initialisierung von System und RSS, wozu nacheinander drei Routinen aufgerufen werden:

  • acc_driver_hal_init(), mit der die Karte und die GPIOs initialisiert werden,
  • acc_driver_hal_get_implementation(), mit der eine C-Struktur, acc_hal_t, instanziiert wird, die Sensor- und Karteneigenschaften umfasst sowie Pointer zu Laufzeit-Handlern für Speicherzuweisung, Semaphore und anderes,
  • acc_rss_activate_with_hal(), mit der das eigentliche RSS-Dienstprogramm (Radar System Services) aktiviert wird.

Ab diesem Punkt umfasst eine typische Messung das Erstellen eines Objekts, genannt Konfiguration. Eine Konfiguration enthält Parameter im Zusammenhang mit dem Sensor und der konkreten Messung. Diese Konfiguration wird dann verwendet, um eine RSS-API-Funktion aufzurufen, die der Erzeugung des gewünschten Detektors oder Service dient. Der Beispielcode veranschaulicht die Anwendung dieses Designmusters in einem Modul, example_detector_distance_peak.c, für die Erstellung eines Distanzspitzendetektors und die Zusammenarbeit mit diesem. In diesem Modul führt die main()-Routine (Liste 1) zuerst die Initialisierung und RSS-Aktivierung durch, bevor eine Konfiguration erstellt (acc_detector_distance_peak_configuration_create()) und diese Konfiguration verwendet wird, um einen Spitzendetektor zu erstellen (distance_peak_detect_with_blocking_calls()).

Kopieren
int main(void)
{
   acc_detector_distance_peak_status_t detector_status;
 
   printf("Acconeer software version %s\n", ACC_VERSION);
   printf("Acconeer RSS version %s\n", acc_rss_version());
 
   if (!acc_driver_hal_init())
   {
      return EXIT_FAILURE;
   }
 
   acc_hal_t hal = acc_driver_hal_get_implementation();
 
   if (!acc_rss_activate_with_hal(&hal))
   {
      return EXIT_FAILURE;
   }
 
   //Create the detector configuration
   acc_detector_distance_peak_configuration_t distance_configuration = acc_detector_distance_peak_configuration_create();
 
   if (distance_configuration == NULL)
   {
      fprintf(stderr, "\nacc_service_distance_configuration_create() failed");
      return EXIT_FAILURE;
   }
 
   //Run distance peak detection in blocking mode
   detector_status = distance_peak_detect_with_blocking_calls(distance_configuration);
   if (detector_status != ACC_DETECTOR_DISTANCE_PEAK_STATUS_SUCCESS)
   {
      fprintf(stderr, "Running distance peak detector in blocking mode failed");
      acc_detector_distance_peak_configuration_destroy(&distance_configuration);
      acc_rss_deactivate();
      return EXIT_FAILURE;
   }
 
   detector_status = distance_peak_detect_with_blocking_calls_with_estimated_threshold(distance_configuration);
   if (detector_status != ACC_DETECTOR_DISTANCE_PEAK_STATUS_SUCCESS)
   {
      fprintf(stderr, "Running distance peak detector in blocking mode with estimated threshold failed");
      acc_detector_distance_peak_configuration_destroy(&distance_configuration);
      acc_rss_deactivate();
      return EXIT_FAILURE;
   }
 
   acc_detector_distance_peak_configuration_destroy(&distance_configuration);
 
   acc_rss_deactivate();
 
   return EXIT_SUCCESS;
}

Liste 1: Beispielcode aus dem Acconeer Software Development Kit (SDK). Er zeigt das grundlegende Designmuster bei Verwendung von Acconeers RSS-API (Radar System Services, Application Programming Interface) zur Durchführung von Messungen mit dem A111-Sensor von Acconeer. (Code-Quelle: Acconeer)

In dieser Beispielanwendung werden die eigentlichen Distanzspitzenmessungen in der Routine distance_peak_detect_with_blocking_calls() durchgeführt. Diese Routine wiederum nutzt die RSS-API-Funktion acc_detector_distance_peak_get_next(), um die eigentlichen Messdaten aus dem A111-Baustein abzurufen (Liste 2). In diesem Fall versetzt der Code die Messungsroutine acc_detector_distance_peak_get_next() in eine Schleife und dekrementiert einen Zähler, detection_runs, bis 100 Messungen durchgeführt wurden.

Kopieren
   detector_status = acc_detector_distance_peak_activate(handle);
 
   if (detector_status == ACC_DETECTOR_DISTANCE_PEAK_STATUS_SUCCESS)
   {
      uint_fast8_t detection_runs = 100;
 
      while (detection_runs > 0)
      {
         reflection_count = 10;
 
         detector_status = acc_detector_distance_peak_get_next(handle,
                                                               reflections,
                                                               &reflection_count,
                                                               &result_info);
 
         if (detector_status == ACC_DETECTOR_DISTANCE_PEAK_STATUS_SUCCESS)
         {
            printf("Distance detector: Reflections: %u. Seq. nr: %u. (%u-%u mm): %s\n",
                   (unsigned int)reflection_count,
                   (unsigned int)result_info.sequence_number,
                   (unsigned int)(start_m * 1000.0f),
                   (unsigned int)(end_m * 1000.0f),
                   format_distances(reflection_count, reflections, metadata.free_space_absolute_offset));
         }
         else
         {
            fprintf(stderr, "reflection data not properly retrieved\n");
         }
 
         detection_runs--;
      }

Liste 2: Bei der Durchführung von Messungen mit dem Acconeer A111-Sensor arbeiten die Entwickler ausschließlich mit der RSS-API (Radar System Services, Application Programming Interface) von Acconeer. Sie ruft RSS-Routinen wie acc_detector_distance_peak_get_next() auf, mit der die Details auf unterer Ebene gehandhabt werden, wie in diesem Snippet gezeigt. (Code-Quelle: Acconeer)

Entwickler können ihre eigenen Detektoren implementieren und dabei Service-Aufrufe in einem ähnlichen Designmuster für die Initialisierung, RSS-Aktivierung, Konfigurationserstellung und Service-Instanziierung nutzen. Um zum Beispiel den Envelope-Service zu verwenden, würden die Entwickler acc_service_envelope_configuration_create() aufrufen, um die erforderliche Konfiguration zu erstellen, und diese Konfiguration als Parameter beim Aufrufen von acc_service_create() zur Instanziierung eines Service-Objekts verwenden.

Durch die Erkundung des Beispielcodes in der C-Programmiersprache können Entwickler schnell Erfahrungen in der Verwendung der RSS-API sammeln, um später mit individuellen Detektoren spezialisierte Radaranwendungen zu entwickeln. Um Entwicklern zu helfen, sich möglichst schnell mit radarbasierten Sensoren im Allgemeinen und mit den RSS-Services im Speziellen vertraut zu machen, bietet Acconeer auch Beispiel-Code, der in seinem Python Exploration Kit-Software-Repository enthalten ist.

Das Python Exploration Kit ist für die Zusammenarbeit mit dem Acconeer-SDK und Evaluierungskits wie dem XM112 konzipiert und hilft Entwicklern, sich die Python-Produktivitätsvorteile für ihre Arbeit mit RSS-Services und -Detektoren zunutze zu machen. Neben grundlegenden Beispielen liefert das Kit auch Beispielcode für die Implementierung sehr aufwendiger Messanwendungen, einschließlich der Erkennung von Atemmustern bei schlafenden Subjekten, der Verwendung von Phaseninformationen zur Verfolgung relativer Bewegungen, der Erkennung sich nähernder Hindernisse und vielem mehr.

Fazit

Die Radarsensortechnologie kann hochpräzise Messungen für entfernungs- und bewegungsbezogene Anwendungen liefern. Allerdings kann sie eine Menge Strom verbrauchen, um die erforderliche Genauigkeit zu erzielen, und erfordert in der Regel einen komplexen Designprozess. Durch die Implementierung von PCR konnte Acconeer einen integrierten Radarsensor entwickeln, der genau die Kombination aus hoher Genauigkeit und geringem Energieverbrauch ermöglicht, die für intelligente Produkte und andere künftige Anwendungen gefragt ist. Das begleitende Software Development Kit (SDK) abstrahiert die Komplexität der Radarsignalverarbeitung, indem es die Art von Daten höherer Ebene liefert, die auf der Anwendungsebene benötigt werden.

Durch Einsatz des SDK mit einer A111-basierten Entwicklungskarte können Entwickler schnell Erfahrungen in der Radarsensortechnologie sammeln und schon nach kurzer Zeit anspruchsvolle Anwendungen implementieren, die in der Lage sind, mit Millimeterauflösung Objekte zu unterscheiden und Bewegungen zu verfolgen.

DigiKey logo

Haftungsausschluss: Die Meinungen, Überzeugungen und Standpunkte der verschiedenen Autoren und/oder Forumsteilnehmer dieser Website spiegeln nicht notwendigerweise die Meinungen, Überzeugungen und Standpunkte der DigiKey oder offiziellen Politik der DigiKey wider.

Über den Autor

Image of Stephen Evanczuk

Stephen Evanczuk

Stephen Evanczuk hat mehr als 20 Jahre Erfahrung im Schreiben für und über die Elektronikindustrie zu einem breiten Spektrum von Themen wie Hardware, Software, Systeme und Anwendungen einschließlich des IoT. Er promoviertein Neurowissenschaften über neuronale Netzwerke und arbeitete in der Luft- und Raumfahrtindustrie an massiv verteilten sicheren Systemen und Methoden zur Beschleunigung von Algorithmen. Derzeit, wenn er nicht gerade Artikel über Technologie und Ingenieurwesen schreibt, arbeitet er an Anwendungen des tiefen Lernens (Deep Learning) zu Erkennungs- und Empfehlungssystemen.

Über den Verlag

Nordamerikanische Fachredakteure von DigiKey