Entwicklung zuverlässiger und sicherer mobiler Roboter dank der Fehlerkorrekturfunktionen von MCX

Wirklich autonome mobile Roboter waren lange Zeit Science-Fiction, doch die jüngsten Fortschritte bei der Datenverarbeitung, Sensorik und Steuerung haben sie der Realität näher gebracht. Eine große Hürde für diese Technologie stellt jedoch die mangelnde Fähigkeit von Robotern dar, sich selbst zu korrigieren, wenn bei der Ausführung ihrer Aufgaben ein Fehler auftritt. In diesem Artikel wird untersucht, wie MCX-MCUs von NXP über erweiterte Fehlerkorrekturfunktionen verfügen, die mobile Roboter sicherer und zuverlässiger machen.

Mobile Roboter werden zunehmend in zahlreichen Anwendungsbereichen eingesetzt, von der industriellen Automatisierung bis hin zur Servicerobotik. Da diese Roboter komplexere Aufgaben übernehmen und in unkontrollierten Umgebungen arbeiten, ist die Gewährleistung ihres zuverlässigen und sicheren Betriebs von entscheidender Bedeutung.

Das neue MCX-Portfolio an Mikrocontrollern von NXP hilft bei der Bewältigung dieser Herausforderungen. Die MCX-MCUs basieren auf dem leistungsstarken Arm® Cortex®-M33-Prozessorkern und verfügen über fortschrittliche Funktionen zur Automatischen Fehlererkennung u. -korrektur (EDAC). Damit eignen sie sich hervorragend für die Entwicklung von mobilen Robotern, die ein hohes Maß an Zuverlässigkeit und Sicherheit erfordern.

Häufige Zuverlässigkeits- und Sicherheitsprobleme bei mobilen Robotern

Mobile Roboter verlassen sich in hohem Maße auf die integrierte Elektronik, um ihre Umgebung wahrzunehmen, Entscheidungen zu treffen und ihre Aktionen zu steuern. Ihre Betriebsbedingungen können jedoch aufgrund verschiedener Faktoren wie extremen Temperaturen, Vibrationen und elektromagnetischen Störungen eine Herausforderung darstellen. Diese Stressfaktoren können im Laufe der Zeit Bitfehler und Datenkorruption im Speicher des Roboters verursachen. Daher müssen wir die langfristige Zuverlässigkeit der Elektronik berücksichtigen, da von mobilen Robotern eine lange Betriebslebensdauer erwartet wird.

1024-image-of-industrial-amrs
Industrielle autonome mobile Roboter

Speicherfehler können bei mobilen Robotern zu verschiedenen Zuverlässigkeits- und Sicherheitsproblemen führen. Ein Bit-Flip in der Steuerungs-Firmware des Roboters könnte dazu führen, dass er falsche Anweisungen ausführt, was zu unbeabsichtigtem Verhalten führt. Beschädigte Sensordaten könnten falsch interpretiert werden und dazu führen, dass der Roboter falsche Entscheidungen trifft. Fehlerhafte Motorsteuerungsausgaben könnten zu unerwarteten Bewegungen führen oder möglicherweise den Roboter oder seine Umgebung beschädigen.

Bei sicherheitskritischen Anwendungen wie etwa mobilen Robotern, die in der Nähe von Menschen operieren, könnten die Folgen solcher Fehlfunktionen gravierend sein. Mobile Roboter benötigen robuste Schutzmechanismen gegen Speicherfehler, um einen zuverlässigen und sicheren Betrieb zu gewährleisten.

MCX-Fehlerkorrekturfunktionen für Flash und RAM

Die Mikrocontroller-Modellreihe NXP MCX A verfügt über mehrere wichtige Funktionen zur Erkennung und Korrektur von Speicherfehlern. In den MCX A sind bis zu 128 KB Flash-Speicher mit der Möglichkeit der Fehlerkorrekturkodierung (Error Correction Coding, ECC) integriert. Die MCX N-Serie verfügt über bis zu 2 MB Flash-Speicher mit ECC. Jedes 128-Bit-Wort des Flash-Speichers enthält zusätzliche 9 Bit ECC-Daten.

ECC ist eine Technik zum Speichern redundanter Bits mit jedem Datenwort. Diese redundanten Bits helfen bei der Überprüfung der Datenintegrität, indem die ECC-Bits neu generiert und bei jedem Lesevorgang mit dem gespeicherten ECC verglichen werden. Wenn die regenerierten und gespeicherten ECC-Bits nicht übereinstimmen, liegt ein Fehler vor, der möglicherweise durch ECC korrigiert werden kann. Außerdem kann die ECC im Falle eines Einzelbitfehlers feststellen, welches Bit betroffen ist. Allerdings können Doppelbitfehler nur erkannt, aber nicht korrigiert werden.

1024-image-of-mobile-robot-example
Beispiel eines mobilen Roboters

Falls der Mikrocontroller einen ECC-Fehler feststellt, kann das System-Controller-Modul (SYSCON) einen Busfehler generieren oder einen Interrupt verwenden, um den Fehler zu verarbeiten. Durch die flexible Fehlerbehandlung können Entwickler die Behandlung so anpassen, dass sie optimal zu ihren Anwendungen passt.

Der MCX A verfügt außerdem über 32 KB On-Chip-SRAM mit einem 8-KB-Block (RAMA0) mit ECC zur Einzelfehlerkorrektur und Doppelfehlererkennung. Die MCX N-Serie bietet bei ECC-Konfiguration bis zu 416 KB RAM, von denen 32 KB im VBAT-Modus erhalten bleiben können. Diese Funktion schützt kritische Laufzeitdaten wie Sensoreingänge und Algorithmuszustandsvariablen. Der Mikrocontroller implementiert ein Fehlerberichterstattungsmodul (ERM), um eine umfassende Berichterstattung und Kontrolle über Fehler zu ermöglichen. Das ERM erfasst und protokolliert Fehlerereignisse aus der ECC-Logik und bietet Einblick in den Zustand des Speichersubsystems. Entwickler können diese Fehlerinformationen zur Diagnose und vorausschauenden Wartung nutzen.

Zur Selbstdiagnose bietet das Error Injection Module (EIM) die Möglichkeit, beim Lesen von ECC-RAM Fehler einzufügen. Mit dieser Selbsttestfunktion können Entwickler regelmäßige Selbstprüfungen durchführen, um sicherzustellen, dass der Mikrocontroller zuverlässig funktioniert.

Zusätzlich zu ECC umfasst die MCX A-Serie einen Memory Block Checker (MBC), der eine Laufzeitsicherheitskontrolle über Lese-, Schreib- und Ausführungsberechtigungen für verschiedene Speicherbereiche bietet. Durch die Definition von Speicherzugriffsrichtlinien kann der MBC unbefugte Speicherzugriffe verhindern.

Wie die Fehlerkorrektur von MCX zuverlässige Roboteranwendungen ermöglicht

Die Fehlerkorrekturfunktionen des MCX arbeiten zusammen, um die Zuverlässigkeit und Sicherheit mobiler Roboter zu verbessern. Durch die automatische Korrektur von Einzelbitfehlern im Flash-Speicher behält der MCX die Integrität der Steuerungs-Firmware des Roboters bei. Diese Integrität verhindert, dass der Roboter eine fehlerhafte Steuerlogik ausführt, die zu unbeabsichtigtem Verhalten führen könnte.

Der MCX ist in der Lage, Doppelbitfehler zu erkennen. Dies ist entscheidend für die Gewährleistung der Sicherheit und Zuverlässigkeit seines Betriebs. Obwohl es nicht möglich ist, Doppelbitfehler zu korrigieren, kann deren Erkennung dazu beitragen, die Verwendung fehlerhafter Anweisungen oder Daten zu verhindern. Sobald ein Doppelbit-Fehler erkannt wird, kann der Roboter in einen sicheren Zustand versetzt werden, wodurch potenzielle Gefahrensituationen oder Fehlfunktionen vermieden werden.

Die ECC-Funktion des MCX erweitert die Möglichkeiten des Speicherschutzes über den Flash-Speicher hinaus auch auf den SRAM-Speicher. Der 8KB RAMA0 SRAM-Block des MCX A umfasst die ECC-Funktion, während der MCX N den RAMG und RAMH für die ECC-Korrektur umfunktionieren kann und somit bis zu 416 KB ECC-RAM zur Verfügung stellt. ECC-RAM ermöglicht Einzelbit-Fehlerkorrektur und Doppelbit-Fehlererkennung für Laufzeitdaten. Diese Funktion schützt kritische Daten wie Sensorwerte, Steuerausgaben und Zwischenalgorithmusvariablen vor der Ansammlung von Einzelbitfehlern, die andernfalls zu Inkonsistenzen in der Wahrnehmung, Planung und Steuerlogik des Roboters führen könnten. Durch die Aufrechterhaltung der Integrität dieser Laufzeitdaten trägt der SRAM ECC des MCX dazu bei, dass die Situationswahrnehmung und Entscheidungsfindung des Roboters präzise und zuverlässig bleiben. Der MCX N bietet zusätzlich bis zu 32 KB ECC RAM, die im VBAT-Modus beibehalten werden können, sodass die Daten auch im Energiesparmodus geschützt bleiben.

Der MBC bietet eine zusätzliche Sicherheitsebene durch die Durchsetzung von Speicherschutzrichtlinien. Sie können unbefugte Speicherzugriffe blockieren und auf diese Weise dazu beitragen, Fehler einzudämmen und zu verhindern, dass diese zu einem unkontrollierten Verhalten des Roboters führen.

Schließlich ermöglicht die ERM-Funktion einen datengesteuerten Ansatz zur Wartung von Robotern. Durch die Protokollierung von Speicherfehlerereignissen bietet das ERM Einblick in den Zustand der Roboterelektronik. Eine steigende Rate behobener Fehler könnte auf einen bevorstehenden Ausfall hinweisen, sodass der Roboter proaktiv gewartet werden kann.

Anwendungsbeispiel

Stellen Sie sich einen mobilen Serviceroboter vor, der in einer industriellen Umgebung arbeitet. Der Roboter muss autonom navigieren und beim Ausführen seiner Aufgaben Hindernissen und Menschen ausweichen.

1024-image-of-mobile-service-robot
Mobiler Serviceroboter

Das industrielle Umfeld kann jedoch eine Herausforderung darstellen, da die Geräte elektromagnetische Störungen (Electromagnetic Interference, EMI) erzeugen. Mit der Zeit könnten elektromagnetische Störungen zu Bitfehlern im Speicher des Roboters führen.

Die ECC-Funktion des MCX würde alle durch EMI verursachten Einzelbitfehler erkennen und korrigieren und damit sicherstellen, dass der Roboter seine Steuerungslogik korrekt ausführt. Wenn ein schwerwiegenderer Doppelbitfehler auftreten würde, würde der MCX ihn erkennen und die Verwendung der beschädigten Daten verhindern. Der Roboter könnte dann eine sichere Abschaltung einleiten.

Während dieser Ereignisse protokolliert die ERM-Funktion des MCX alle auftretenden Fehler. Das Wartungspersonal könnte diese Protokolle überwachen und auf Trends achten, die auf einen möglichen Fehler hinweisen. Durch proaktive Wartung des Roboters werden Ausfallzeiten minimiert und die Sicherheit gewährleistet.

MCUXpresso-Entwicklererfahrung

Für schnelles Prototyping mit MCX bietet NXP die kostengünstige FRDM-Entwicklungsplattform an. FRDM-Entwicklungsplatinen verfügen über einen Standardformfaktor und Header, einfachen Zugriff auf MCU-E/As, einen integrierten MCU-Link-Debugger und ein USB-C-Kabel.

Darüber hinaus bietet der GitHub von NXP Zugang zu Anwendungsbeispielen, die über das Application Code Hub (ACH) Portal abgerufen werden können. MCUXpresso IDE und MCUXpresso für VS Code verfügen über integriertes ACH-Browsing. Damit können Entwickler einfach nach verfügbaren Demos und Beispielen suchen und nach Gerät, Anwendungstechnologie oder Peripheriegerät/Funktion filtern, bevor sie das Projekt direkt zur Verwendung laden.

Der Expansion Board Hub (EBH) ist eine Erweiterung der SDK Builder-Website von NXP, auf der Entwickler eine Reihe von Zusatzplatinen von NXP und Partnern finden, mit denen sie die Fähigkeiten der gewählten Evaluierungsplatine erweitern können. Dieser Hub bietet eine intuitive Filterfunktion, um schnell Boards und verfügbare unterstützende Software zu finden. Entwickler können ihre Platine mit verschiedenen Arten von Shields koppeln, um sie zu evaluieren und für bestimmte Anwendungsfälle oder Applikationen ein Rapid Prototyping durchzuführen.

NXP ermöglicht zuverlässige und sichere mobile Robotik

Da mobile Roboter immer autonomer werden, ist es von entscheidender Bedeutung, ihren zuverlässigen und sicheren Betrieb sicherzustellen. Werden sie nicht behoben, können Speicherfehler, die durch schwierige Betriebsumgebungen verursacht werden, zu einem unerwarteten Verhalten des Roboters führen.

Das MCX-Mikrocontroller-Portfolio von NXP ist mit seinen Fehlerkorrekturfunktionen gut gerüstet, um die Anforderungen einer zuverlässigen Robotik zu erfüllen. Von ECC-geschütztem Flash und SRAM bis hin zur Laufzeit-Speicherzugriffskontrolle und Fehlerereignisprotokollierung bietet der MCX mehrere Schutzebenen gegen Speicherfehler.

Entwickler mobiler Roboter, die Zuverlässigkeit und Sicherheit optimieren möchten, sollten den NXP MCX in Betracht ziehen. Seine fortschrittliche Architektur und sein umfassender Funktionsumfang machen ihn zu einer starken Plattform für die Entwicklung zuverlässiger autonomer Roboter.


Ähnliche Beiträge

Neue Beiträge

Leider ergab Ihre Suche kein Ergebnis

Aktuelles über Elektronikkomponenten­

Wir haben unsere Datenschutzbestimmungen aktualisiert. Bitte nehmen Sie sich einen Moment Zeit, diese Änderungen zu überprüfen. Mit einem Klick auf "Ich stimme zu", stimmen Sie den Datenschutz- und Nutzungsbedingungen von Arrow Electronics zu.

Wir verwenden Cookies, um den Anwendernutzen zu vergrößern und unsere Webseite zu optimieren. Mehr über Cookies und wie man sie abschaltet finden Sie hier. Cookies und tracking Technologien können für Marketingzwecke verwendet werden.
Durch Klicken von „RICHTLINIEN AKZEPTIEREN“ stimmen Sie der Verwendung von Cookies auf Ihrem Endgerät und der Verwendung von tracking Technologien zu. Klicken Sie auf „MEHR INFORMATIONEN“ unten für mehr Informationen und Anleitungen wie man Cookies und tracking Technologien abschaltet. Das Akzeptieren von Cookies und tracking Technologien ist zwar freiwillig, das Blockieren kann aber eine korrekte Ausführung unserer Website verhindern, und bestimmte Werbung könnte für Sie weniger relevant sein.
Ihr Datenschutz ist uns wichtig. Lesen Sie mehr über unsere Datenschutzrichtlinien hier.