Embedded Systems Edge ist das neue Embedded

Autor / Redakteur: Mark Patrick * / Margit Kuther

Durch die Steigerung der Rechenleistung von Geräten an der Netzwerk-Edge lässt sich ein zuverlässiges, hochleistungsfähiges und datenschutzkonformes IoT sicherstellen.

Firmen zum Thema

Bild 1: Embedded Machine Learning ist ein wichtiger Faktor für die „intelligente Edge“.
Bild 1: Embedded Machine Learning ist ein wichtiger Faktor für die „intelligente Edge“.
(Bild: Mouser Electronics)

Cloud Computing hat viele Vorteile mit sich gebracht, etwa flexibles, effizientes und produktives Arbeiten, auch von zu Hause aus – und hat den Zugang zu hochmodernen Ressourcen wie Künstliche Intelligenz (KI) und Big-Data-Anwendungen demokratisiert.

Die Cloud ist der Dreh- und Angelpunkt des IoT, an den die vielen Milliarden IoT-Endpunkte wie Umweltsensoren, industrielle Aktoren, autonome Fahrzeuge und andere Geräte ihre Daten übermitteln, und ist damit ein entscheidender Faktor, mit dem Einzelpersonen wie auch Unternehmen die Vorteile einer intelligenteren Welt für sich nutzen können.

Es gibt jedoch auch Nachteile. Das Aufrechterhalten einer Internetverbindung ist energieintensiv und kann für kleine Geräte technisch schwierig oder teuer sein. Netzwerke können durch M2M-Datenverkehr überlastet werden, wenn jedes Datenbit zurück in die Cloud übertragen werden muss. Außerdem führt die Abhängigkeit von der Cloud zu Latenzzeiten, die die Servicebereitstellung beeinträchtigen und verhindern können, dass IoT-Geräte deterministisch in Echtzeit arbeiten. Zudem bringt die Datenübertragung über das Netzwerk und die gemeinsame Nutzung mit Cloud-Anwendungen Datenschutz- und Sicherheitsprobleme mit sich.

Den Verarbeitungsaufwand nachverfolgen

Die Rechenleistung für die Verarbeitung von Daten und das Treffen von Entscheidungen auf der Grundlage der Ergebnisse verlagert sich aus der Cloud in den Randbereich des Netzwerks („Edge“). Aus der Perspektive des Enterprise Computing oder des Netzbetreibers bezieht sich Edge Computing auf Gateway-Geräte an der Peripherie des Kernnetzes. Dies kann weiter unterteilt werden in Near-Edge-Infrastruktur, die typischerweise generische Dienste hostet, und in spezifischere Anwendungen im Far-Edge-Bereich, der näher am Endbenutzer liegt.

Mit zunehmender Rechenleistung wird die Edge zur „intelligenten Edge“. Aber warum sollte man dort aufhören? Durch die Verlagerung der Rechenleistung weiter nach außen zu den Endpunkten des IoT, inklusive Sensoren und Aktoren sowie Datenaggregatoren und Gateways, entsteht die Embedded Edge. Hier entstehen neue Lösungen, mit denen sich die traditionellen Beschränkungen überwinden lassen, vor denen die Entwickler von Embedded-Systemen stehen, beispielsweise der Stromverbrauch, die Rechenleistung, der Speicherbedarf und die physische Größe.

Welche Vorteile bringt Edge Processing?

Angesichts der Fortschritte der aufeinanderfolgenden Prozessorgenerationen, die immer komplexere Aufgaben bewältigen und eine schnellere Leistung bei geringerem Stromverbrauch bieten, wird der Embedded-Edge-Bereich als Säule der IoT-Verarbeitung weiter an Bedeutung gewinnen.

Insbesondere einflussreiche Trends wie Industrie 4.0 und autonomes Fahren bringen Anwendungen mit sich, bei denen es auf möglichst kurze Latenzzeiten und Netzwerkunabhängigkeit ankommt – und genau das kann Edge Processing liefern. Beispiele hierfür sind die Bildverarbeitung durch Roboter (Bild 1) und die Fahrzeugführung. Durch Einbindung von Machine-Learning-Inferenz in Embedded-Systeme können diese weiter beschleunigt und verbessert werden.

Machine Learning kann die Leistung herkömmlicher Machine-Vision-Anwendungen noch übertreffen und zusätzliche Funktionen ermöglichen. Bei einem Autonomous Guided Vehicle (AGV) ist es beispielsweise nicht nur möglich, Objekte auf dem Weg zu erkennen, sondern diese auch zu identifizieren und zu klassifizieren. Diese Fähigkeit wird immer wichtiger, da in den Arbeitsbereichen von Fabriken immer mehr Menschen und mobile oder statische Roboter in unmittelbarer Nähe gleichzeitig arbeiten.

In ähnlicher Weise können Machine-Learning-Verfahren die Effizienz der Mustererkennung in industriellen Zustandsüberwachungssystemen verbessern und damit die Diagnosegenauigkeit erhöhen. Auch im Bereich Smart Agriculture (intelligente Landwirtschaft) können lokale Machine-Learning-Fähigkeiten genutzt werden, beispielsweise durch das Trainieren von Bilderkennung zur autonomen Erkennung von Pflanzenkrankheiten, ohne dass eine Internetverbindung erforderlich ist.

Machine Learning mit Tiny Machine Learning

Um diese Fähigkeiten in Embedded-Geräten zu realisieren, entstand das Konzept des Tiny Machine Learning (TinyML). TinyML beschreibt Machine-Learning-Frameworks, die auf die Bedürfnisse von Embedded-Systemen mit eingeschränkten Ressourcen abgestimmt sind. Entwickler benötigen Werkzeuge, um Machine-Learning-Modelle zu erstellen und zu trainieren und sie dann für den Einsatz auf dem Edge-Device, z. B. einem Mikrocontroller, kleinen Prozessor oder FPGA, zu optimieren.

TinyML-Prinzipien sind in Edge-orientierten Machine-Learning-Frameworks wie TensorFlow Lite (Bild 2) verankert. Dieses beliebte und weit verbreitete Framework beinhaltet Werkzeuge, darunter einen Konverter, der Standard-TensorFlow-Modelle so optimiert, dass sie auf einem Ziel wie einem Embedded-Linux-Gerät laufen, sowie einen Interpreter zur Ausführung des optimierten Modells.

Zudem wurde TensorFlow Lite für Mikrocontroller speziell dafür entwickelt, Machine Learning auf Geräten auszuführen, die nur über extrem wenig Speicher verfügen. Die Core-Runtime belegt nur wenige KByte Speicher und wurde auf vielen Mikrocontrollern mit Arm Cortex-M-Cores getestet. Die TensorFlow Lite Tools bieten verschiedene Möglichkeiten, die Größe von TensorFlow-Modellen zu reduzieren, um sie auf einem Embedded-Gerät, etwa einem Raspberry Pi oder Mikrocontroller laufen zu lassen.

Lösungen für Inferencing an der Edge

Führende Mikrocontroller-Hersteller stellen jetzt Ökosysteme und Prozessabläufe für den Einsatz von KI-Inferencing und Machine Learning bereit. Es sind jetzt Embedded-Mikrocontroller erhältlich, die so konzipiert sind, dass sie den Einsatz von neuronalen Netzen zur Ausführung von Machine-Learning-Algorithmen ermöglichen.

Es gibt neue Generationen von Mikrocontrollern, die speziell für Machine-Learning-Inferenz entwickelt wurden. TIs Sitara Prozessoren wie der AM5729 sind ein Beispiel dafür. Neben zwei Arm-Cortex-A15-Kernen und einem Cortex-M4-Embedded-Core bietet der AM5729 vier Embedded Vision Engines (EVE), die Deep-Learning-Netzwerke unterstützen können und so eine hohe Inferencing-Leistung gewährleisten. Das Software-Framework TI Deep Learning (TIDL) und die TIDL-Schnittstelle helfen Entwicklern, neuronale Netzwerke auf Embedded-Prozessoren zu erstellen, zu trainieren und einzusetzen.

Das Tool STM32Cube.AI zur Konvertierung trainierter neuronaler Netze, die mit verschiedenen gängigen Frameworks erstellt wurden, erstellt automatisch Bibliotheken, die für den Mikrocontroller STM32 Arm Cortex-M von STMicroelectronics optimiert sind. Das KI-Ökosystem bietet auch Software-Funktionspakete, die die notwendigen Low-Level-Treiber und Middleware-Bibliotheken für den Einsatz des trainierten neuronalen Netzes enthalten. Zudem gibt es Beispielanwendungen für die Klassifizierung von Audioszenen und die Erkennung menschlicher Aktivitäten, mit denen Anwender schnell lernen können, wie man Embedded KI einsetzt. Darüber hinaus werden eine spezielle Mobile App und die SensorTile-Referenzhardware von STMicroelectronics zur Durchführung von Inferenzen oder zur Datenerfassung bereitgestellt. Das SensorTile ist ein sofort einsatzbereites Board mit Umgebungs- und Kontextsensoren, die alle als Plug-and-Play-Modul vorintegriert sind.

Microchip bietet Machine-Learning-Unterstützung für seine Mikroprozessoren, FPGAs und 32-Bit-Mikrocontroller wie die SAM D21-Serie. Mit den Tools des Unternehmens können Entwickler gängige Machine-Learning-Frameworks wie TensorFlow, Keras und Caff sowie TinyML-Frameworks wie TensorFlow Lite einsetzen. Bei der Arbeit mit Mikrocontrollern oder Mikroprozessoren können Entwickler mit dem MPLAB-Toolset die Vorteile von Tools wie dem ML Plugin und dem MPLAB Data Visualizer nutzen, um Daten für das Training neuronaler Netze mit Tools von Microchip-Partnern zu erfassen. Dazu zählen Cartesiam Nano Edge AI Studio, das automatisch nach KI-Modellen sucht, bei der Analyse von Sensordaten hilft und Bibliotheken generiert, und Edge Impulse Studio mit der Edge Impulse Inferencing SDK C++ Bibliothek, die TensorFlow Lite für Mikrocontroller nutzt. Anwender können ihre Projekte mit der Microchip MPLAB X IDE auf der von ihnen gewählten Mikrocontrollereinheit implementieren.

Die Embedded Artificial Intelligence (e-AI)-Plattform von Renesas umfasst mehrere Konzepte, die bei der Implementierung von KI in Endgeräten hilfreich sind. Die Renesas RZ/A2M-Mikroprozessoren verfügen über die Dynamically Reconfigurable Processor (DRP)-Technologie, bei der die Leistung eines Hardware-Beschleunigers mit der Flexibilität einer CPU kombiniert wird, um Machine Vision mit hoher Geschwindigkeit und geringem Stromverbrauch zu ermöglichen. Die Plattform enthält auch Tools, darunter den e-AI Translator. Dieser konvertiert und importiert die Inferenzverarbeitung von trainierten neuronalen Netzwerkmodellen in Quellcodedateien, die innerhalb eines C/C++-Projekts der e² studio IDE verwendet werden können. Die neuronalen Netze können mit einem Open-Source Deep Learning Framework wie TensorFlow trainiert werden.

Zudem können Maker, junge Entwickler und Profis gleichermaßen mit dem Aufbau intelligenter Geräte experimentieren, indem sie die Google AIY-Do-it-yourself-KI-Kits und die lokale Google Coral KI-Plattform nutzen. Die AIY-Kits beinhalten eine intelligente Kamera, die aus einem Raspberry Pi-Board und einer Kamera, einer Vision-Haube, den notwendigen Kabeln und Druckknöpfen sowie einem einfachen Pappgehäuse besteht, sodass Benutzer schnell etwas über Bilderkennung lernen können. Ein ähnliches intelligentes Lautsprecher-Kit ist hilfreich bei der Erforschung der Spracherkennung.

Google Coral bietet eine Auswahl an Hardware, darunter ein Entwicklungsboard, ein Mini-Entwicklungsboard und einen USB-Beschleuniger mit einem Co-Prozessor, mit dem Anwender KI in bestehende Produkte schnell und einfach einbinden können. Das Toolkit unterstützt TensorFlow Lite, und alle Boards enthalten Googles Edge TPU, eine Tensor Processing Unit, die mit der Google Cloud TPU verwandt ist und speziell für einen kleinen Platzbedarf und geringen Stromverbrauch entwickelt wurde.

Fazit: Die Zukunft des Edge ist Embedded Intelligence

Durch die Steigerung der Rechenleistung von Geräten an der Netzwerk-Edge lässt sich ein zuverlässiges, hochleistungsfähiges und datenschutzkonformes IoT sicherstellen. Geräte an verschiedenen Standorten, von Netzwerk-Gateways und Aggregatoren bis hin zu IoT-Endpunkten, können als Edge-Geräte angesehen werden. Um den Forderungen nach Leistung und Effizienz gerecht zu werden, wird zunehmend Künstliche Intelligenz benötigt, einschließlich Machine-Learning-Lösungen für den Einsatz auf Mikrocontrollern. Hierzu gehören Open-Source-TinyML-Frameworks und optimierte, beschleunigte Mikrocontroller-Architekturen von führenden Herstellern. Für Entwickler, egal ob Anfänger oder erfahrener Profi, steht eine Vielzahl von Tools, Plattformen und Plug-and-Play-Kits zur Verfügung, um die vielfältigen Möglichkeiten zu erforschen und zu nutzen.

* Mark Patrick ... ist Technical Marketing Manager EMEA bei Mouser Electronics.

Artikelfiles und Artikellinks

(ID:47599830)