Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial Internet of Things >> Internet der Dinge-Technologie

Die Entwicklung eingebetteter Geräte:Bewältigung komplexer Designherausforderungen

Eingebettete Geräte waren vor dem Internet der Dinge relativ einfach zu entwerfen. Der Designer eines Geräts, einer industriellen Steuerung oder eines Umgebungssensors muss nur die Eingangssignale verbinden, mit einem Mikrocontroller verarbeiten und die Ausgangssteuerung bereitstellen. Systeme waren eigenständig; und abgesehen von Reverse Engineering gab es für einen Hacker keinen Anreiz, auf ein System zuzugreifen.

Mit der Einführung des Smartphones erwarten wir nun, dass unsere Geräte smart, aktualisierbar und über das Internet zugänglich sind. Sicherheit ist nicht optional – wenn Sicherheit nicht ernst genommen wird, werden Daten, Markenreputation und Einnahmequellen beeinträchtigt. Auch eingebettete Systeme werden immer komplexer und man kann nicht in allem Experte sein! Glücklicherweise können Sie vorhandene Standards und Stack-Bibliotheken verwenden, um ein Projekt rechtzeitig und sicher abzuschließen.

In diesem Artikel werden die wichtigsten Designherausforderungen beschrieben, denen sich Embedded-Entwickler heute gegenübersehen, und einige der neuen Technologien, die Designern dabei helfen, diese Herausforderungen zu meistern.

Wichtige Designherausforderungen und Markterwartungen

  1. Umfangreiche Benutzeroberflächen

Die ersten Smartphones führten eine reichhaltige Benutzeroberfläche mit einem hochwertigen Display und Touchscreen ein. High-End-Embedded-Geräte haben LCD- und OLED-Displays und Touchscreens hinzugefügt. Dies hat die Verarbeitungsanforderungen und den Bedarf an einem Anwendungsprozessor und einem reichhaltigen Betriebssystem erhöht. Für diejenigen, die keinen Anwendungsprozessor benötigen, haben technologische Fortschritte die Taktgeschwindigkeiten für Mikrocontroller von mehreren zehn Megahertz auf mehrere hundert Megahertz und Speichergrößen auf mehrere Megabyte erhöht. Dies hat es Designern ermöglicht, weiterhin von vertrauten Architekturen zu profitieren, wie sie beispielsweise für Arm Cortex-M verwendet werden.

Viele eingebettete Systeme benötigen nur eine Benutzeroberfläche zur Konfiguration und gelegentlichen Steuerung. Consumer- und Industrial-IoT-Geräte sind preissensibel und profitieren von der Internetverbindung, um die Steuerung über ein Webinterface oder eine Smartphone-App zu ermöglichen. Beispielsweise können Daten von Industriesensoren aus der Ferne überwacht werden, um Leistung und Fehler zu verwalten sowie möglichen Ausfällen vorzubeugen. Dies stellt den Embedded-Ingenieur vor neue Herausforderungen. Sie müssen jetzt über HF, Protokollstapel, Sicherheit, Fernverwaltung und Firmware-Updates Bescheid wissen.


Abbildung 1:Smart Home-Steuerung (Quelle:Getty Images, ID 908590688, Elena Pejchinova)

  1. Lokale und Fernbedienung

Sie können lokale und ferngesteuerte Steuerung über Ethernet, WiFi, Bluetooth, Z-Wave, Zigbee oder Thread implementieren – jedes hat Vorteile in Bezug auf Stromverbrauch, Komplexität und Kosten . Generell sind Low-Power-Protokolle wie Bluetooth Low Energy, Z-Wave und Zigbee gute Lösungen für Batterieanwendungen. Dazu gehören Türschlösser, Umweltsensoren und Funkalarmsysteme. Geräte, die mehr Bandbreite benötigen, wie Sicherheitskameras und Sensor-Gateways, werden über WLAN verbunden. Oder Geräte an entfernten Standorten verwenden Mobilfunk. Eine interessante Option ist die Kombination von WiFi und Bluetooth Low Energy. Bluetooth wird dann für die Inbetriebnahme und den lokalen Zugriff für geringe Latenzzeiten verwendet, und WLAN wird für den Fernzugriff über das Internet verwendet.

Die Herausforderung für den Embedded-Design-Entwickler besteht nicht nur darin, die richtige Lösung für sein Produkt auszuwählen, sondern auch die Komplexität der Integration von Funk, Kommunikationsstacks und Energieverwaltung. ohne die Kosten zu erhöhen.


Abbildung 2:Netzwerk einer Stadt (Quelle:Getty Images, ID 811360940, Dong Wenjie)

  1. Niedrige und niedrigere Leistung

Ein niedriger Stromverbrauch ist bei batteriebetriebenen Anwendungen entscheidend. Intelligente Wasserzähler müssen beispielsweise über die gesamte Lebensdauer des Zählers, die bis zu 20 Jahre betragen kann, mit einer einzigen Batterie funktionieren. Andererseits kann bei einem Türschloss die Batterie einmal im Jahr ausgetauscht werden, was eine sorgfältige Konstruktion erfordert. Eine der Techniken, die zum Energiesparen verwendet werden, besteht darin, einen Mikrocontroller mit sehr geringem Stromverbrauch zu entwickeln, der sich für sehr kurze Zeiträume einschaltet, um die Benutzerinteraktion zu erfassen. Es wird dann für längere Zeit schlafen.

  1. Geräte werden intelligenter

Designer suchen nach Möglichkeiten, ihre Produkte durch das Hinzufügen intelligenter Funktionen zu differenzieren. Intelligente Funktionen implizieren normalerweise, dass ein Gerät mehr über den Benutzer, die Umgebung und das System erfährt und die Funktionalität anpassen kann.

Maschinelles Lernen ist eine Möglichkeit, intelligente Funktionen mithilfe eines lern- und anpassbaren Algorithmus hinzuzufügen. Wir sehen maschinelles Lernen heute überall um uns herum:von der Entsperrung Ihres Fingerabdrucks (Abgleich mit einem kleinen Satz von Fingerabdruckbildern) oder der automatischen Tagging-Funktion von Facebook. Es handelt sich jedoch um eine relativ neue Lösung innerhalb eingebetteter, kostenbeschränkter Systeme.

Ein großartiges Beispiel für maschinelles Lernen für eingebettete Geräte sind intelligente Thermostate. Der Thermostat lernt das Verhalten des Benutzers basierend auf seinem Lebensstil und passt die Temperatur im Laufe der Zeit automatisch auf die angenehmste Einstellung an. Für den industriellen Markt könnte ein Beispiel ein Schwingungssensor für Motoren sein. Der Sensor kann die normale Vibrationssignatur des Motors lernen und dann das Personal warnen, wenn das Gerät gewartet werden muss oder ausfällt.

Die Herausforderung für Embedded-Designer besteht darin, mit maschinellen Lernalgorithmen zu beginnen und die Algorithmen an die Anforderungen der Anwendung anpassen zu können.


Abbildung 3:Smart Home-Klimasystem (Quelle:Getty Images, ID 474200292, MaxiPhoto)

  1. Produkte müssen aktualisiert werden

Produkte werden heute selten mit dem endgültigen Funktionsumfang ausgeliefert. Durch Over-the-Air-Updates (OTA) kann neue Firmware heruntergeladen werden, um Funktionen hinzuzufügen, Fehler zu beheben oder Sicherheitslücken zu schließen, wodurch die Nutzungsdauer des Produkts erheblich verlängert wird. Produkte müssen auch mit genügend Spielraum für Speicher und Verarbeitungsleistung entworfen werden, um eine Erhöhung der Codegröße und Funktionalität zu ermöglichen.

Eine Herausforderung besteht darin, sicherzustellen, dass Firmware-Updates und die gesamte Kommunikation sicher sind. Wenn eine Firmware-Schwachstelle gepatcht wird, sollte das System kein Rollback der Firmware zulassen. Wenn dies der Fall ist, wird die Schwachstelle aufgedeckt.


Abbildung 4:Beispiele für eingebettete Anwendungen, die möglicherweise OTA-Updates erfordern (Quelle:Bild von Getty Images, ID 145676156, Earl Wilkerson. Symbole:Arm)

Neue Technologien, die Designern helfen, diese Herausforderungen zu meistern

Ich habe die Herausforderungen für Embedded-Designer und die Branchentrends beschrieben, die sie vorantreiben, aber wie sieht es mit den möglichen Lösungen aus? Ich würde argumentieren, dass es drei grundlegende Designtechniken gibt, die sich auf alle oben definierten Bereiche auswirken:Implementierung der Signalverarbeitung, Sicherung Ihres Geräts und Hinzufügen von Intelligenz durch maschinelles Lernen.

Wie kann ich die Signalverarbeitung vereinfachen und Kosten sparen?

Die meisten eingebetteten Systeme haben analoge Schnittstellen. Dies kann so einfach sein wie das Ablesen der Temperatur über einen Analog-Digital-Wandler bis hin zu komplexeren Systemen wie der Verarbeitung von Ton von mehreren Mikrofonen (Beamforming) und der Spracherkennung.

Ältere Designs führten den größten Teil der Anwendung und Filterung im analogen Bereich durch, aber mit dedizierten digitalen Signalprozessoren (DSPs) hat sich die Verarbeitung in den digitalen Bereich verlagert. Dies liegt daran, dass DSPs genauer, wiederholbarer in der Herstellung sind und im Laufe der Zeit angepasst werden können.

Mit der Einführung von digitalen Signalcontrollern (DSCs) oder Mikrocontrollern mit DSP-Erweiterungen können Designer jetzt das Beste aus beiden Welten nutzen. Ein einzelner Controller, der die DSP- und Steuerungsfunktionen ausführen kann, bietet eine Reduzierung der Kosten, des Platzbedarfs auf der Platine und des Stromverbrauchs.

Die digitale Signalverarbeitung kann komplex sein, aber Designer müssen keine Experten sein, um fortschrittliche Verarbeitung zu verwenden. Arm bietet beispielsweise ein kostenloses Software-Framework für eingebettete Anwendungen, CMSIS-DSP-Bibliotheken.

Warum sollte ich mich um Sicherheit kümmern?

Ein Produkt, das mit unzureichender Sicherheit ausgeliefert wird, kann zu Datenverlust, peinlicher Werbung, finanziellen Kosten und Kundenfrust führen. Sicherheitsangriffe können sich über alle Sektoren erstrecken und unterschiedliche Auswirkungen haben, vom Zugriff auf ein Hausautomationssystem und das Ein- und Ausschalten von Lichtern bis hin zu Industriespionage und dem Zugriff auf ein Netzwerk über IoT-Geräte.

Externe Bedrohungen können in vier Angriffsarten eingeteilt werden:Kommunikation, Lebenszyklus, Software und physisch. Aber woher wissen Sie, vor welchen Bedrohungen Sie sich schützen müssen und wie Sie Ihr Gerät mit dem richtigen Sicherheitsniveau gestalten können? Letztes Jahr haben wir ein Sicherheits-Framework für alle, die vernetzte Geräte entwickeln, eingeführt, die Platform Security Architecture (PSA). Es ist ein dreistufiger Prozess, der Designern und Entwicklern alles gibt, was sie brauchen, um das Sicherheitsniveau und die Bedrohungsabwehr zu bestimmen, für die sie sich entscheiden sollten. Die PSA-Dokumentation und der Open-Source-Code (Trusted Firmware-M) erleichtern Entwicklern den Einstieg.


Abbildung 5:Verfügbare ARM-Technologie zur Abwehr von Sicherheitslücken (Quelle:Arm)

Wie füge ich intelligente Funktionen hinzu?

Intelligente Funktionen können hinzugefügt werden, indem komplexe Algorithmen implementiert werden, die von Datenwissenschaftlern geschrieben wurden. Ein System, das auf Sprachbefehle reagiert, kann durch Analysieren von Tonproben und Vergleichen dieser mit einer Vorlage für jeden Befehl implementiert werden. Das Problem bei diesem Ansatz besteht darin, dass er für einen Benutzer gut funktionieren kann, jedoch nicht für eine Vielzahl von Benutzern, und er wäre in einer lauten oder sich ändernden Umgebung nicht robust.

Intelligente Funktionen, die maschinelles Lernen verwenden, erfordern, dass das System mithilfe eines Datensatzes trainiert wird, z. B. Sprachbefehle, die von vielen Sprechern in verschiedenen Umgebungen und Bedingungen gesprochen werden. Dieses Training verwendet normalerweise Cloud-Server. Sobald das Modell erstellt und optimiert wurde, kann die Inferenz oder Verwendung des Modells auf einem eingebetteten Prozessor abgeschlossen werden.

Eine Lösung ist CMSIS-NN, eine kostenlose Bibliothek für neuronale Netze, die entwickelt wurde, um die Leistung zu maximieren und den Speicherbedarf neuronaler Netze auf Cortex-M-Prozessorkernen zu minimieren.

Neue Ära – sowohl neue Möglichkeiten als auch neue Herausforderungen

Keine Frage, Embedded Devices sind komplexer denn je – die Produktanforderungen steigen, der Kostendruck wächst und die Sicherheitsbedenken steigen weiter, insbesondere bei vernetzten Geräten.

All diese Faktoren stellen Entwickler vor große Herausforderungen. Die gute Nachricht ist jedoch, dass sich die Branche weiterentwickelt, um dies mit geistigem Eigentum, Software, Tools und Schulungsressourcen zu unterstützen, um Embedded-Entwicklern zu helfen, die Grenzen des Möglichen zu überschreiten.


Phil Burr ist Director für das etablierte Produktportfolio der Embedded Group bei Arm. Er leitet ein Team, das für das CPU-Portfolio von Arm verantwortlich ist, und trägt dazu bei, dass diese Prozessoren neuen und bestehenden Partnern Innovationen ermöglichen. Phil verwaltet auch das Arm DesignStartprogramm – eine kostengünstige, leicht zugängliche Route zu Arm IP.



Internet der Dinge-Technologie

  1. Die Maschinenrevolution braucht DICH!
  2. Vier große Herausforderungen für das industrielle Internet der Dinge
  3. Die 3 wichtigsten Herausforderungen bei der Aufbereitung von IoT-Daten
  4. 5 Herausforderungen, vor denen das Internet der Dinge noch steht
  5. Erkunden der fünf wichtigsten Herausforderungen des IoT durch die 5 Cs – Teil 1
  6. Die Herausforderungen beim Softwaretesten von IOT-Geräten
  7. Steuerungssystemdesign:Von den einfachsten bis zu den komplexesten Designs
  8. Einsatz von DevOps zur Bewältigung von Herausforderungen mit eingebetteter Software
  9. Herausforderungen bei der IoT-Entwicklung meistern
  10. Die Entwicklung des 3D-Sehens