Sicherheit braucht feste Regeln Funktionale Sicherheit in Embedded-Systemen

Verschiedene Normen und Standards bei der Sicherheit von Maschien, Automobilen, Zügen und Flugzeugen.
Verschiedene Normen und Standards bei der Sicherheit von Maschien, Automobilen, Zügen und Flugzeugen.

Unfälle und Unglücke führen immer wieder zu Diskussionen über die Sicherheit von Maschinen, Automobilen, Zügen oder auch Flugzeugen. Hier gibt es verschiedene Normen und Standards, die bei der Entwicklung beachtet werden müssen und die auch stetig weiterentwickelt werden.

Immer mehr Geräte fallen unter solche Sicherheitsstandards, obwohl man ihnen das nicht ansieht. Dies geschieht einfach aus dem Grund, dass elektronische Komponenten – z.B. ein Mikrocontroller – die Kontrolle über Teile des Gerätes haben, die bei fehlerhaftem Verhalten z.B. zu einer Verletzung oder einem größeren Schaden wie einem Feuer führen könnten. Dieser Artikel soll beispielhaft aufzeigen, warum Sicherheitsstandards nötig sind, warum immer mehr Embedded-Systeme davon betroffen sind und was bei der Entwicklung zu beachten ist.

Die Embedded-Welt entwickelt sich weiter

Mikrocontroller sind sehr vielseitige Chips, die immer mehr Aufgaben übernehmen können. Das verlockt, dies auch in Geräten umzusetzen. Betrachtet man die Weiterentwicklung einer Waschmaschine, so gab es hier eine beachtliche Wandlung. Eine historische Waschmaschine hatte einen mechanischen Drehschalter, der von einem Motor wie ein Uhrwerk gedreht wurde und mit mechanischen Kontakten die Pumpe und den Trommelmotor direkt oder über Schütze an- und abschaltete. Der Trommelmotor wurde dabei direkt mit 230 V angetrieben.

Die Nachteile davon sind bekannt: Der Stromverbrauch war unnötig hoch und die Wäsche wurde nicht gerade schonend geschleudert. Da ist es doch heute sehr komfortabel, eine sehr leise und stromsparende Waschmaschine zu haben, die die Wäsche schonend behandelt.

Wie war das möglich? Die Waschmaschine hat üblicherweise einen Mikrocontroller, der die Motoren über Pulsweitenmodulation steuert. Mit feldorientierter Regelung wird der Motor, an die Drehzahl und das benötigte Drehmoment exakt angepasst, gesteuert. Das hat die ganzen oben genannten Vorteile, aber den Nachteil, dass die PWM-Signale natürlich an die Eigenschaften des Synchronmotors angepasst sein müssen. Sind die PWM-Signale nicht passend, kann es zu Überhitzung bis hin zum Brand kommen. Folglich muss sichergestellt sein, dass dies nicht geschieht bzw. davor rechtzeitig in einen sicheren Modus geschaltet wird. Das fordern die Sicherheitsstandards.

Ein anderes Beispiel sind die Bremsen eines üblichen Personenwagens. Klassisch bestand die Bremse aus einem mit Bremsöl gefüllten System. Beim Treten des Pedals wurde der Druck auf die Bremsen der vier Räder verteilt und es wurde gebremst. Unterstützend hat ein Bremskraftverstärker zusätzliche Bremskraft gegeben. Ist der ausgefallen, so hat die Bremse immer noch funktioniert. Um die Gefahr eines Unfalls im Falle eines Lecks in einer Bremsleitung zu mindern, wurde das Bremssystem zweikreisig ausgeführt.

Heute gibt es Fahrassistenzsysteme wie ABS oder ESP, welche die Bremsen zusätzlich steuern. Bei ABS ist es eine Verringerung der Bremskraft, damit die Räder nicht blockieren. Ein Fehler hier wäre evtl. noch akzeptabel, besonders bei kleinen Geschwindigkeiten. Beim ESP wird ggf. auch aktiv gebremst, hier wäre ein Fehlverhalten wesentlich kritischer. Auch hier ist also Elektronik oder programmierbare Elektronik für richtiges oder falsches Verhalten und damit auch für eventuelle Schäden verantwortlich.

Forderungen der Standards am ­Beispiel von IEC 61508

Die Norm IEC 61508 war einer der ersten Sicherheitsstandards. Er wurde aus den im vorausgehenden Abschnitt genannten Gründen für „elektrische, elektronische und programmierbare elektronische Systeme“ geschaffen. Von diesem wurden dann weitere Standards wie ISO 26262 für Automobile oder andere weiterentwickelt.

Die folgende Liste gibt den Inhalt wieder, wovon hauptsächlich die Teile 2 und 3 wichtig sind:

  • Teil 0: Funktionale Sicherheit und IEC 61508
  • Teil 1: Allgemeine Anforderungen
  • Teil 2: Anforderungen an sicherheitsbezogene elektrische/elektronische/programmierbare elektronische Systeme
  • Teil 3: Anforderungen an Software
  • Teil 4: Begriffe und Abkürzungen
  • Teil 5: Beispiele zur Ermittlung der Stufe der Sicherheitsintegrität (Safety Integrity Level)
  • Teil 6: Anwendungsrichtlinie für IEC 61508-2 und IEC 61508-3
  • Teil 7: Anwendungshinweise über Verfahren und Maßnahmen.

Den Zweck des Standards beschreibt Wikipedia wie folgt: „Ziel dieser Norm ist es, Verfahrensweisen zu definieren, die es erlauben, Produkte herzustellen, die nach dem aktuellen Stand der Technik keine unverhältnismäßigen oder unvertretbaren Gefahren für Anwender und Umwelt bedeuten. Die Norm beschreibt, welche Gesichtspunkte auf welche Weise schon mit Beginn der Entwicklung zu berücksichtigen sind, wie die Produktarchitektur beschaffen sein soll (beispielsweise durch einkanalige oder mehrkanalige Systeme), welche Tätigkeiten und betrieblichen Organisationsstrukturen notwendig sind, wie diese zu dokumentieren sind und dass alle Schritte in der internen Dokumentation des Herstellers zu seinem Produkt nachvollziehbar und rückverfolgbar niedergelegt werden müssen. Dabei wird in der Norm vom sog. ‚Lebenszyklus-Modell‘ ausgegangen, d.h., ein Produkt wird von der ersten Planungsstufe über die Markteinführung und das Änderungsprozedere bis hin zu seiner Außerbetriebnahme und Entsorgung betrachtet. Über all diese Lebensphasen sind vom Hersteller Nachweise der Abläufe zu erzeugen, die das Produkt durchlaufen hat. Er hat ferner nachzuweisen, dass seine übergeordneten innerbetrieblichen Abläufe geeignet sind, Produkte herzustellen, von deren Funktion – auch im Versagensfall – keine unvertretbaren Schäden an Mensch, Ausrüstung und Umwelt entstehen.“

Diese sehr treffende Aufzählung beschreibt schon, wie komplex – besonders für Anfänger – die Beachtung dieser Norm sein kann und dass dies wesentlich höheren Aufwand erfordert. Ein Faktor 4 im Mehraufwand einer Full-Safe-Entwicklung gegenüber einer qualifizierten Entwicklung ohne die Safety-Anforderungen ist durchaus realistisch.