Bild 1: Das Gyroset-Glory ist eine Kombination aus einem universellen Controller und einem diskreten wie Headset.

Bild 1: Das Gyroset-Glory ist eine Kombination aus einem universellen Controller und einem diskreten Headset. LDRA

Nicht jeder ist körperlich in der Lage, seinen Rollstuhl per Joystick zu bedienen. Deshalb sind alternative Bedienelemente wie etwa ein Headset notwendig. Das Gyroset-Glory (Bild 1) ist eine Kombination aus einem universellen Controller und einem diskreten Headset. Im Verbund mit Gyroset-Link eingesetzt, ermöglicht das Set Menschen mit stark eingeschränker Beweglichkeit darüber hinaus die Bedienung ihres Elektro-Rollstuhls. Mit seinen proportionalen Bedienfunktionen gewährleistet das Gyroset-Glory einen intuitiven Umgang mit dem Rollstuhl, sodass der Anwender den Rollstuhl proportional zu dem vom Eingabegerät kommenden Signal in jede Richtung lenken kann.

Festlegung der Normen

Aufgrund der universellen Einsetzbarkeit des Sets war es notwendig, abhängig von der jeweiligen Funktion als Medizingerät, Rollstuhl-Controller oder automer Rollstuhl, eine Vielzahl von Normen einzuhalten.

In bestimmten Anwendungsfällen lässt sich das Produkt als Medizingerät klassifizieren, was die Konformität zur Norm IEC-6061, einem weithin akzeptierten Standard für elektrische medizinische Geräte, erfordert. In vielen Ländern ist für die Kommerzialisierung elektrischer medizinischer Geräte die Konformität zur Norm IEC-6061-1 Voraussetzung.

Im Einsatz als Rollstuhl-Controller ist die Norm ISO-7176 relevant. ISO-7176-14:2008 spezifiziert die Anforderungen und entsprechenden Prüfmethoden für die Antriebs- und Steuerungssysteme von Elektrorollstühlen und Scootern. Die Norm legt die Sicherheits- und Performance-Anforderungen fest, die beim normalen Gebrauch sowie bei einigen missbräuchlichen Verwendungen und Störungen gelten. Sie spezifiziert auch Methoden zur Messung der Kräfte, die zum Betätigen der Bedienelemente notwendig sind. Ebenso definiert sie Grenzwerte für die Kräfte, die für einige Bedienhandlungen erforderlich sind.

Während die ersten Gyroset-Headsets noch keinen Functional-Safety-Standards genügen mussten, sollen künftige Versionen der Controller dafür sorgen, dass Rollstühle Autonomie erreichen, weshalb sie eindeutig nach Safety-kritischen Standards zu zertifizieren sind. Now Technologies hat deshalb seine Software gemäß der Norm-IEC 62304:2006 (Medizingeräte-Software – Software-Lebenszyklus-Prozesse) entwickelt. Im Rahmen des Safety-kritischen Prozesses entschied sich das Unternehmen außerdem für die Einhaltung der Norm MISRA-C:2012, um der Forderung der Norm-IEC-62304 nach Anwendung von Codierstandards zu entsprechen.

Den Code richtig schreiben

Für C-Programmierer, die an Safety- oder Security-kritischen Anwendungen arbeiten, können die Restriktionen und Richtlinien zur Sicherstellung sicherer Codierpraktiken mühevoll sein. Die Eigenschaften der Programmiersprache C sind dafür konzipiert, die Programmierarbeit einfacher und effizienter zu gestalten und bei etwaigen Hindernissen Abhilfemöglichkeiten bereitzuhalten. Dies sind aber oftmals genau jene Features, deren Verwendung von den besagten Richtlinien für Sprach-„Teilmengen“ untersagt ist.

Da es in lebensentscheidenden Anwendungen aber zwingend erforderlich ist, den Code nach den strengsten Verfahrensweisen zu entwickeln, ist die Konformität zu diesen Richtlinien ein durchgängiges Thema in den Functional-Safety-Normen der unterschiedlichen Bereiche. Zum Beispiel sorgen die in MISRA-C enthaltenen Richtlinien für eine Vielzahl von Vorteilen in der jeweiligen Codebasis.

Einerseits fördern sie die Portierbarkeit und helfen bei der Vermeidung unerwarteter Ergebnisse, andererseits stellen sie sicher, dass keine Abhängigkeiten von compiler- oder plattformspezifischen Konstrukten bestehen. Außerdem lassen sich unausführbare oder unerreichbare Codes identifizieren. Diese sind häufig ein Indiz für einen Defekt, der sich im besten Fall nur auf die Pflegbarkeit des Codes auswirkt. Auch das Verbot bestimmter Sprach-Konstrukte wirkt sich vorteilhaft aus, da diese häufig die Ursache von Fehlern oder Sicherheits-Schwachstellen sind. Abschließend tragen sie auch zu einer messbaren Reduzierung der Programmkomplexität bei, verbessern die Prüfbarkeit des Programms und vereinfachen Normkonformität sowie Zertifizierbarkeit.

Mit der Zielsetzung, diese Vorteile zu wahren, die Restriktionen aber gleichzeitig für die Entwickler weniger beschwerlich zu machen, ist die MISRA seit langem beständig dabei, die Regeln präziser zu fassen. So wollen die Verantwortlichen erreichen, dass der Standard keine sinnvollen Verwendungs- oder Verhaltensweisen unterbindet, die keine unerwünschten Konsequenzen haben. Zum Beispiel waren in der Vergangenheit Makros untersagt, weil sie viele Probleme mit sich bringen können. Die Entwickler konnten Makros deshalb auch unter solchen Umständen nicht nutzen, in denen sie eine elegante, zweckmäßige und technisch solide Lösung boten. Die derzeitigen, aktualisierten MISRA-Regeln erlauben jedoch Makros und schränken ihren Gebrauch lediglich ein, um ihre ordnungsgemäße Verwendung zu gewährleisten.

Spezifikation einer Toolchain

Um sich den unterschiedlichen Design-Herausforderungen zu stellen, entschied sich Now Technologies, die Mikrocontroller der Serie STM32-M3 und STM32-M4 für die Gyroset-Reihe zu verwenden, und machte den Atollic-Compiler zum Bestandteil seiner Linux-gehosteten Toolchain, während bei statischen Analysen LDRA-Rules Anwendung findet.

Bild 2: LDRA-rules erzwingt die Konformität zu Codierstandards, die entweder in der Industrie üblich oder vom Anwender vorgegeben sind.

Bild 2: LDRA-Rules erzwingt die Konformität zu Codierstandards, die entweder in der Industrie üblich oder vom Anwender vorgegeben sind. LDRA

LDRA-Rules erzwingt die Konformität zu Codierstandards, die entweder in der Industrie üblich oder vom Anwender vorgegeben sind, und liefert eine klare Übersicht über die Softwarefehler, die den Build- und Prüfprozess sonst unerkannt durchlaufen und sich zu latenten Problemen entwickeln könnten (Bild 2). Mithilfe von LDRA-Rules war Now Technologies in der Lage, potenzielle Fehler und Sicherheitslücken zu identifizieren, welche die MISRA-C:2012-Richtlinien erfassen. Außerdem half das Tool bei der Einhaltung der Norm IEC-62304.

Klassifizierung und Validierung der Tools

Durch die Verwendung unabhängig klassifizierter und zertifizierter Testwerkzeuge für den Einsatz mit Functional-Safety-Standards wie IEC-62304 konnte das Unternehemn den Qualifizierungsprozess für das Gyroset-Glory weniger mühsam gestalten, als es sonst für eine Compliance-Initiative der Fall gewesen wäre.

Software-Testwerkzeuge fallen nach den Functional-Safety-Standards allgemein in die T2-Klassifizierung. Dazu gehören alle Tools, die das Prüfen oder Verifizieren des Designs oder von ausführbarem Code unterstützen. Fehler im Tool könnten zwar zur Folge haben, dass sich Defekte nicht immer erkennen lassen, aber diese führen nicht unmittelbar zu Fehlern in der ausführbaren Software.