In Fachzeitschriften für Elektronikingenieure sind Artikel zur IoT-Anwendungen allgegenwärtig. Ganz egal in welchem Kontext die Technologie zum Einsatz kommt, immer sind Konnektivität und Zugriff auf große Datenmengen ein Thema, damit eine anschließende Analyse, Manipulation und ein Vergleich durchführbar ist. Wie der Umgang mit diesen Daten abläuft ist dabei höchst entscheidend. Obwohl von einem Bedarf an Edge-basierten Implementierungen mit lokalen Datenverarbeitungs- und Speicherressourcen auszugehen ist, geschieht die Realisierung erst, nachdem die Daten von ihrem Erfassungsort zurück in die Cloud transportiert wurden.
Zu den datenintensiveren Anwendungen, die unter die IoT-Kategorie fallen, gehören die Verkehrs- und räumliche Überwachung in intelligenten Städten, die industrielle Bildverarbeitung (zum Beispiel Bildverarbeitungssysteme in automatisierten Produktionslinien) sowie die Haussicherheit. Um die erforderliche Internetkonnektivität für die Vernetzung mit der Cloud zu ermöglichen, sind Mikrocontroller-Einheiten (MCUs) zu spezifizieren, die die entsprechenden Schnittstellentechnologien umfassen. Dies kann auf verschiedene Weise geschehen – beispielsweise über Ethernet, Camera-Link oder CAN-Bus bei der drahtgebundenen beziehungsweise über Wi-Fi, Zigbee oder Bluetooth bei der drahtlosen Übertragung. Mit der zunehmenden Vielfalt an IoT-Anwendungen mit jeweils eigenen, sehr spezifischen Betriebskriterien sind MCUs mit weitaus umfangreicherer I/O‑Kapazität notwendig.
Anwendungsfall Webserver
Ein einfaches Szenario, bei dem ein Webserver zum Einsatz kommt, um die von diversen Sensorgeräten gemessenen Daten zusammenzutragen, ist in Bild 1 dargestellt. Den für die Internetanbindung benötigten TCP/IP-Stack stellt hier die Open-Source-Version der Lightweight-IP-Plattform (lwIP) zur Verfügung. Der auf der MCU laufende Webserver-Code erstellt eine Webseite, über die alle erfassten Daten von einem entsprechend geschulten Mitarbeiter einsehbar und analysierbar sind. Je nach Art der Anwendung muss die Bearbeitung der Daten in Echtzeit erfolgen (zum Beispiel bei einem Inspektionssystem bei einer industriellen Fertigungslinie, wo eine sofortige Reaktion erforderlich ist, wenn ein Problem erkannt wird). In solchen Anwendungsfällen kann Systemlatenz ein großes Problem darstellen, wenn beim Eintreten einer Situation, die schwerwiegende Folgen haben könnte, nicht genügend Zeit für eine angemessene Reaktion bleibt. Dies können beispielsweise teure Maschinenschäden oder eine Gefährdung in der Nähe befindlicher Mitarbeiter sein.
Die I/O-Ressourcen der meisten MCUs sind derzeit relativ begrenzt und erfüllen nicht unbedingt die immer höheren Erwartungen der Entwickler. Ein Grund dafür ist unter anderem, dass die MCU-Produkte, welche die Hersteller im Laufe der letzten zehn Jahre auf den Markt gebracht haben, auf eine kleine Anzahl von Kernplattformen angewiesen waren. Einerseits hat ihnen dies geholfen, mehr Marktanteil zu gewinnen und die Produktentwicklungszyklen zu vereinfachen, aber andererseits auch die Differenzierung der MCU-Produkte etwas gebremst.
Auf der folgenden Seite beschreibt der Beitrag, warum bei MCUs ein Taktikwechsel notwendig ist.
Taktikwechsel notwendig bei der MCU
Eck-Daten
IoT-Anwendungen benötigen Mikrocontroller-Einheiten, die über umfangreiche Konnektivitätsmöglichkeiten verfügen, große Datenmengen verarbeiten können und gleichzeitig Standardaufgaben ausführen können. Die meisten aktuell auf dem Markt befindlichen MCUs sind mit diesen Aufgaben überfordert. Bei der Implementierung von Funktionen haben sich MCU-Hersteller hauptsächlich auf die Möglichkeiten konzentriert, dies über die Software zu realisieren. Bridgetek stellt im Beitrag vor, wie eine Hardware-seitige Herangehensweise dabei hilft, die Anforderungen von IoT-Entwicklern an MCUs auch mit Blick auf die Zukunft zu erfüllen.
Da die Branche nun die lukrativen Möglichkeiten, die das IoT bietet, nutzen will, bedarf es einer anderen Taktik. So wurde beispielsweise eine Vielzahl von MCUs für das IoT auf den Markt gebracht, deren Hauptziel es ist, den Stromverbrauch zu minimieren. Daneben hat sich die Gewährleistung eines hohen Maßes an Sicherheit als wichtiger Aspekt erwiesen, da IoT-Knoten allen möglichen Cyber-Angriffen ausgesetzt sind. Internetkonnektivität war dabei jedoch oft nur ein nachträglicher Gedanke – in manchen Fällen unterstützen die Bausteine nur grundlegende drahtlose Funktionen.
Die I/Os der MCUs zu rationalisieren geht vielen MCU-Herstellern zu weit und es besteht die Befürchtung, dass dies den Anwendungsbereich des Bausteins zu sehr einschränkt. Es liegt in der Natur von IoT-Anwendungen, dass keine zwei Szenarien genau gleich sind. MCU-Hersteller hingegen wollen ausreichende Stückzahlen, um Skaleneffekte zu ermöglichen. Dafür benötigen sie Geräte mit einer gewissen Vielseitigkeit. Sich am Anforderungsprofil eines Anwendungstyps (mit seinen eigenen speziellen Verbindungseigenschaften) auszurichten ist in Ordnung, aber es muss die Kapazität vorhanden sein, darüber hinausgehende Ansprüche zu erfüllen.
Beispiele wie die bereits erwähnten, bei denen große Mengen an Multimedia-Daten zu bearbeiten sind, verdeutlichen das Problem. Allzweck-MCUs sind für solche Aufgaben schlecht gerüstet. Der Versuch, eingehende Daten zu erfassen und gleichzeitig andere Standardfunktionen auszuführen, überfordert ihre Verarbeitungsressourcen. Dies kann Latenzprobleme verursachen, was jedoch in direktem Widerspruch zu Applikationen steht, bei denen ein deterministischer Betrieb vorgeschrieben ist.
Von Software zu Hardware
Ein wesentlicher Faktor ist, dass sich die überwiegende Mehrheit der MCU-Anbieter auf die Implementierung von Features und Funktionen über Software konzentriert hat. Im Gegensatz dazu verfolgt Bridgetek einen stärker Hardware-basierten Ansatz. Infolgedessen können die Geräte der FT900- und FT930-Serie den leistungsoptimierten Betrieb liefern, den generische MCUs vermissen lassen. Ausschlaggebend dafür ist die integrierte Bridging-Technologie. Durch ihren Einsatz können diese MCUs dedizierte Brücken zwischen schnellen I/Os bereitstellen, wodurch diskrete Elemente eines Designs Zugriff auf die am besten geeignete verfügbare Hardware erhalten. Das bedeutet, dass die Anbindung der verschiedenen Verarbeitungs- und I/O-Elemente innerhalb der MCUs völlig deterministisch erfolgen kann – ohne Latenzprobleme.
Die proprietären FT32‑Kerne, die in diese 32-Bit RISC-basierten MCUs integriert sind, kommen ohne jegliche Wartezyklen aus und erreichen eine Leistung von 310 DMIPS bei einer Taktfrequenz von 100 MHz. Neben 10 Base‑T (10 Mbit/s) und 100 Base‑TX (100 Mbit/s) Ethernet-Konnektivität unterstützen sie auch CAN-Bus, I2C, USB und zahlreiche andere I/Os. Ausgehend von dem in Bild 1 gezeigten Beispiel ist es möglich, einer MM900EVxA‑Karte (die eine FT900‑MCU integriert, Bild 2) die Rolle des Webservers zuzuweisen, der zur Verwaltung aller Echtzeit-Sensordaten erforderlich ist. Universal-Plug-and-Play (UPnP) ist auf dieser Hardware implementiert, sodass sie unter „Andere Geräte” in der Rubrik „Netzwerk” beim Windows Explorer und ähnlichen Plattformen zur Internetanbindung auflistbar ist. Dies gestaltet die Installation schnell und einfach. Entsprechende Netzwerkeinstellungen lassen sich im nichtflüchtigen Speicher der MM900EVxA-Karte ablegen, womit sich diese Informationen in der lwIP-Bibliothek befinden. Die HTTPD-Anwendung liest statische und serverseitige Include-Dateien aus dem virtuellen Dateisystem. Auch die Verarbeitung der serverseitigen Include-Dateien erfolgt in der HTTPD-Anwendung und wird über eine Anwendungs-Callback-Funktion ergänzt.
Nachem die Konnektivität steht, ist es an der Zeit, sich Gedanken über die Systemsicherheit zu machen. Wie dies konkret aussieht, erfahren Sie auf der nächsten Seite.
Systemsicherheit
Sobald der Aspekt der Konnektivität geklärt ist, steht als nächstes die Systemsicherheit an. Existiert innerhalb eines Systems eine Vielzahl von Geräten, die mit der Cloud verbunden sind, so stellt dies eine potenzielle Angriffsfläche für Hacker dar. Daher ist es notwendig, geeignete Mechanismen zu schaffen, die es böswilligen Personen unmöglich machen, die Nutzung eines Geräts oder die Sicherheit eines Gebäudes zu gefährden. Jede Anwendung muss eine effektive Zertifikats- und Authentifizierungsstruktur enthalten. Zu diesem Zweck hat Bridgetek eine umfangreiche Suite von detaillierten Beispielen für die FT900-Serie von MCUs zur Verfügung gestellt, die zeigen, wie Entwickler Mbed-TLS-Bibliotheken anwenden können, um sichere Sockets für die Netzwerkanbindung zu erstellen. Daneben erklären die Beispiele die Erzeugung der Zertifikate und Schlüssel, die von sicheren Sockets in Open-SSL-Implementierungen Verwendung finden. Damit lassen sich Daten über MQTT-Protokolle sicher zwischen einer dieser MCUs und einem MQTT-Broker übertragen.
MCUs fürs IoT – ein Ausblick
IoT-Implementierungen leisten perspektivisch einen wichtigen Beitrag zum MCU-Gesamtumsatz. Laut dem jüngsten Bericht der Analysten von Market Research Future wird für das IoT-MCU-Geschäft bis 2023 eine jährliche Wachstumsrate von 12 Prozent erwartet, was einem jährlichen Gesamtumsatz von fast vier Milliarden Dollar zu diesem Zeitpunkt entsprechen würde. Zu beachten ist dabei allerdings, dass die Leistungsmerkmale und I/O-Kapazität der meisten heute auf dem Markt befindlichen MCUs nicht ausreichen, um einen großen Teil der Anwendungen zu adressieren, die sich derzeit abzeichnen. Es besteht eine Diskrepanz zwischen dem, was die an IoT-Projekten beteiligten Entwickler von MCU-Produkten wollen und dem, was sie tatsächlich bekommen. Der generische Plattformansatz der Halbleiterhersteller schränkt die Kreativität ein und führt zu unnötigen Kompromissen.
Notwendig sind Geräte, die eine größere Auswahl an Konnektivitätsmöglichkeiten bieten. Gleichzeitig müssen sie aber auch in der Lage sein, eine verbesserte Betriebsleistung zu erbringen. Obwohl ein erheblicher Teil der IoT-Anwendungen aus einer großen Anzahl von verteilten Sensorknoten bestehen wird, wo der Fokus auf niedrigem Stromverbrauch und der Unterstützung relativ begrenzter Datenraten liegt, gibt es noch viele weitere Szenarien, die eine schnelle Datenübertragung und -verarbeitung erfordern. Halbleiterhersteller müssen daher mehr anwendungsoptimierte Geräte entwickeln, bei denen mehr Wert auf eine effektivere Konnektivität gelegt wird.
(na)