Hilfe bei der Erkennung von Software-Fehlern in IoT-Geräten

Bei der Entwicklung von Software für IoT-Geräte lässt sich nie mit Sicherheit feststellen, ob auch wirklich alle Fehler entdeckt wurden. Wie immer bei der Software-Entwicklung können Tests zwar das Vorhandensein von Fehlern aufzeigen, aber nicht deren Abwesenheit beweisen. Es ist daher nicht ungewöhnlich, dass Softwarefehler unentdeckt bleiben und bis in das fertige Gerät durchrutschen. Allein die durchschnittlichen Kosten für die Behebung von Fehlern im ersten Betriebsjahr eines eingebetteten Geräts können sich auf hunderttausende Dollar belaufen. Der von AWS IoT Core gehostete neue Cloud-Service Percepio DevAlert alarmiert Entwickler, sobald ein Fehler auftritt und bietet eine visuelle Trace-Diagnose zur Identifizierung der Grundursache.
Die Abbildung veranschaulicht den Informationsfluss in der Lösung und das Zusammenspiel mit der DevAlert Classification Engine.
Die Abbildung veranschaulicht den Informationsfluss in der Lösung und das Zusammenspiel mit der DevAlert Classification Engine.Bild: Percepio AB

Wie in jeder Software stecken auch in der Firmware von IoT-Geräten Fehler. Laut Schätzungen entstehen bei der Entwicklung eingebetteter Software typischerweise 50 bis 100 Fehler pro 1.000 Codezeilen; etwa drei bis fünf dieser Fehler werden beim Testen übersehen und landen somit in der endgültigen Geräte-Firmware. Das liegt daran, dass es praktisch unmöglich ist, jedes Ausführungsszenario und jeden Code-Pfad in Multi-Threaded-Firmware zu testen. Auch steigt der Aufwand, der erforderlich ist, um den letzten verbleibenden Softwarefehler zu finden, in der Regel exponentiell an.

Visuelle Trace-Diagnose im Percepio Tracealyzer: Die Übersichten helfen den Entwicklern, Anomalien zu erkennen und verknüpfte Ansichten vereinfachen das Drill-down zu den entsprechenden Ereignissen.
Visuelle Trace-Diagnose im Percepio Tracealyzer: Die Übersichten helfen den Entwicklern, Anomalien zu erkennen und verknüpfte Ansichten vereinfachen das Drill-down zu den entsprechenden Ereignissen.Bild: Percepio AB

Die Fehlerbehebung ist teuer

Eine kürzliche Umfrage des Marktforschungsunternehmens VDC Research ergab, dass eingebettete Geräte-Firmware im ersten Jahr nach Einsatz durchschnittlich 79 Software-Patches benötigt. Die durchschnittlichen Kosten für das Debuggen, die Fehlerkorrektur und die Bereitstellung lagen bei über 5.000 Dollar pro Patch. Das sind insgesamt mehrere hunderttausend Dollar an Supportkosten pro Projekt, allein im ersten Jahr. Noch gravierender ist, dass viele dieser Patches Fehler beheben, über die sich der Kunde bereits seit geraumer Zeit ärgert. Die im VDC-Bericht genannten Kosten pro Patch berücksichtigen keine Faktoren, wie die Schädigung der Kundenbeziehungen, schlechte Produktbewertungen oder entgangene Verkaufschancen, die einen noch viel größeren Einfluss auf das Geschäft haben können als die direkten Kosten für die Fehlerbehebung.

Umgehende Fehlermeldung

Cloud-basierte IoT-Plattformen wie AWS IoT Core bieten Embedded-Entwicklern neue Möglichkeiten der nachträglichen Beseitigung von Firmware-Fehlern. Mit AWS IoT Core können IoT-Geräte mit Cloud-Anwendungen und anderen Geräten interagieren. Die Plattform unterstützt Milliarden von Geräten und Nachrichten zuverlässig und sicher verarbeiten und an AWS-Endpunkte und andere Geräte weiterleiten, selbst wenn gerade kein Internet-Zugang besteht. Tritt ein neuer unbekannter Fehler in der Firmware auf, wird der Entwickler direkt über den Cloud-Service informiert. Dabei enthält der Fehlerbericht detaillierte Software-Traces, die genau zeigen, was in der Firmware kurz vor dem Auftreten des Fehlers geschah. Sobald der Fehler behoben wurde, kann der Patch automatisch über die Cloud als Over-the-Air (OTA)-Update implementiert werden, was sowohl schneller als auch zuverlässiger ist, als Kunden zu bitten, den Patch manuell herunterzuladen und zu installieren. Percepio stellt für diesen Prozess drei Komponenten zur Verfügung: Percepio DevAlert Firmware Agent, Percepio DevAlert Classification Engine, Percepio Tracealyzer.

Percepio DevAlert Firmware Agent

Der DevAlert Firmware Agent ist eine kompakte Softwarebibliothek, die Geräteentwickler in ihre RTOS-basierte IoT-Anwendung einbetten. Dieser Agent verhält sich in etwa wie ein Flugschreiber und ist für zwei Firmware-Überwachungsaufgaben zuständig: Er zeichnet die jüngsten Software-Ereignisse auf und bietet aufgrund eines speziellen Fehlerbehandlungscodes die Möglichkeit, alle festgestellten Fehler zu melden. Wird ein Fehler entdeckt und gemeldet, beispielsweise eine fehlgeschlagene Assert-Bedingung, liefert ein Bericht wichtige Informationen und Diagnosedaten. Dieser Fehlerbericht, Alert genannt, wird dann über die bestehende AWS IoT Core-Verbindung in das Konto des Entwicklers hochgeladen. Falls die Verbindung im Moment nicht verfügbar ist (z.B. aufgrund des gemeldeten Fehlers), kann der Alert stattdessen im Flash-Speicher gespeichert und nach Wiederherstellung der Verbindung hochgeladen werden.

Seiten: 1 2 3Auf einer Seite lesen

Das könnte Sie auch Interessieren

Bild: Gorodenkoff - stock.adobe.com
Bild: Gorodenkoff - stock.adobe.com
Konkrete Vorteile durch TSN für die Industrie

Konkrete Vorteile durch TSN für die Industrie

Das Potenzial von transformativen Digitaltechnologien gemäß Industrie 4.0 ist in der Industrie unumstritten. Allerdings ist das damit verbundene große Datenaufkommen ein zweischneidiges Schwert: Einerseits bergen diese Datenmengen ein Potenzial, das in Form wertvoller Informationen zur Prozessoptimierung verwendet werden kann. Andererseits drohen diese Datenmengen, sofern sie nicht gut gehandhabt werden, zu einer Datenflut anzuwachsen, die Unternehmen überfordert und somit mehr Probleme schafft, als sie löst.

Bild: ©jamesteohart/shutterstock.com / Softing Industrial Automation GmbH
Bild: ©jamesteohart/shutterstock.com / Softing Industrial Automation GmbH
Maschinenkonnektivität – als Teil von Edge Computing

Maschinenkonnektivität – als Teil von Edge Computing

Edge Computing ist ein Trendthema in der industriellen Produktion. Ausgehend von einer Definition des Begriffs Edge beschreibt dieser Artikel den aktuellen Stand der Technologie- und Marktentwicklung rund um Industrial Edge Computing. Besondere Berücksichtigung finden der Zusammenhang von Maschinenkonnektivität und Edge, sowie Fragen nach Betriebskonzepten und Skalierbarkeit von Industrial-IoT-Lösungen.

Bild: VDMA e.V.
Bild: VDMA e.V.
Von der Datatur 
zur Datokratie

Von der Datatur zur Datokratie

Maschinenbau und Elektrotechnik bilden die zwei Standbeine der industriellen Produktion. Zusammen stehen beide Branchen hierzulande für über 10.000 Unternehmen und über zwei Millionen Beschäftigte. Deutschland bildet folglich bislang das Gravitationszentrum und die Innovationsquelle der industriellen Automatisierung. Dass das in Zeiten der smarten Fabrik so bleibt, dafür soll das Datenökosystem Manufacturing-X sorgen.

Bild: TeDo Verlag GmbH
Bild: TeDo Verlag GmbH
Der Digital Twin 
im Mittelpunkt

Der Digital Twin im Mittelpunkt

Die sechste Ausgabe der Stuttgarter Innovationstage am 28. Februar und 1. März stand ganz unter dem Leitthema des digitalen Zwillings. Weil der Begriff so vielschichtig ist und oft unterschiedlich interpretiert wird, ging der
Kongress sowohl auf Grundlagen zur Definition ein als auch auf konkrete Einsatzmöglichkeiten in der Produktion. Anwendungsbeispiele und Referenzen wurden ergänzt um aktuelle Projekte aus der Forschung. Kernbestandteil war in diesem Jahr ebenfalls wieder die ausgiebige Möglichkeit für Diskussion und Networking sowie ein Blick hinter die Kulissen des Veranstalters – in die Maschinenhalle des Instituts für Steuerungstechnik der Werkzeugmaschinen und Fertigungseinrichtungen der Universität Stuttgart (ISW).

Bild: ©Enrique del Barrio/stock.adobe.com
Bild: ©Enrique del Barrio/stock.adobe.com
Erschwerte Bedingungen

Erschwerte Bedingungen

Es sind eigentlich einfache Gesetze der Mechanik. Die falsche Kombination der wichtigen Parameter – Last, Hebel und Neigungswinkel – die dazu führen können, dass es zu Unfällen mit mobilen Arbeitsmaschinen kommt. Hohe Kosten und im schlimmsten Fall Personenschäden können die Folge sein. Der Einsatz von Sensoren und messtechnischen Lösungen integriert in die mobilen Maschinen kann dazu beitragen, Unfälle zu verhindern.